Delphi中判断一个文件是不是JPG图片文件

function IsJpegFile(FileName: string): Boolean;
const
RightBuf : array[0..3] of Byte = ($FF,$D8,$FF,$D9);
var
Buf: array[0..3] of Byte;
begin
FillChar(Buf, 4, 0);
with TFileStream.Create(FileName, 0) do begin
    Position := 0;
    ReadBuffer(Buf[0], 2);
    Position := Size-2;
    ReadBuffer(Buf[2], 2);
    Free;
end;
Result := CompareMem(@RightBuf[0], @Buf[0], 4);
end;

procedure TForm1.Button1Click(Sender: TObject);//测试
begin
if Self.OpenDialog1.Execute then
    if IsJpegFile(Self.OpenDialog1.FileName) then
      Showmessage('Is Jpg File');
end;

根据扩展名判断,只是一种简单方法.这是根据文件头和文件尾判断....

posted @ 2013-05-01 16:34  小天1981  阅读(194)  评论(0编辑  收藏  举报