1,183
社区成员
发帖
与我相关
我的任务
分享
functiom GetFileType(FileName:String):string;
var
MyImage:TMemoryStream;
Buffer:Word;
i:integer;
begin
Result := 'Err';
MyImage:=TMemoryStream.Create;
try
MyImage.LoadFromFile(FileName);
MyImage.Position := 0; // 指针文件开头的位置
if MyImage.Size = 0 then Exit; // 文件大小等于0退出
MyImage.ReadBuffer(Buffer,2); // 读取文件的前2个字节[低位到高位],放到Buffer里面
if Buffer=$4D42 then Result :='BMP';
if Buffer=$D8FF then Result :='JPEG';
if Buffer=$4947 then Result :='GIFP';
if Buffer=$050A then Result :='PCX';
if Buffer=$5089 then Result :='PNG';
if Buffer=$4238 then Result :='PSD';
if Buffer=$A659 then Result :='RAS';
if Buffer=$DA01 then Result :='SGI';
if Buffer=$4949 then Result :='TIFF';
finally
MyImage.Free; // 释放内存流对象
end;
end;