请问在delphi中如何取得一个文件的长度

解决方案 »

  1.   

    好像有个叫GetFileSize()的API吧!
    要不就是FileSize()
      

  2.   

    要取得一个文件的长度的方法很多的:1:
    function GetFileSize(FileName:String);LongInt;
    var
      Stream:TFileStream;
    begin
      try
        Stream:=TFileStream.Create(FileName,fmOpenRead);
        Result:=Stream.Size;
        Stream.Free;
      except
        Result:=-1;
      end;
    end;2:
    var
      hFile : Integer;
    begin
      hFile:=CreateFile(PChar('c:\temp\a.htm'), GENERIC_READ, 0, nil,
                        OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
      Edit1.Text := IntToStr(GetFileSize(hFile, 0));
    end;3:
    function MyGetFileSize(const FileName: string): LongInt;
    var
      SearchRec: TSearchRec;
    begin
      if FindFirst(ExpandFileName(FileName), faAnyFile, SearchRec) = 0 then
      begin
        Result := SearchRec.Size;
        FindClose(SearchRec);
      end
      else Result := -1;
    end;