如何得到一个文件的大小?

解决方案 »

  1.   

    FileSize
    procedure TForm1.Button1Click(Sender: TObject);var
       f: file of Byte;
       size: Longint;
       S: string;
       y: Integer;
    begin
      if OpenDialog1.Execute then
      begin
        AssignFile(f, OpenDialog1.FileName);
        Reset(f);
        try
          size := FileSize(f);
          S := 'File size in bytes: ' + IntToStr(size);
          y := 10;
          Canvas.TextOut(5, y, S);
          y := y + Canvas.TextHeight(S) + 5;
          S := 'Seeking halfway into file...';
          Canvas.TextOut(5, y, S);      y := y + Canvas.TextHeight(S) + 5;
          Seek(f, size div 2);
          S := 'Position is now ' + IntToStr(FilePos(f));
          Canvas.TextOut(5, y, S);
        finally
          CloseFile(f);
        end;
      end;
    end;
      

  2.   

    var
      Ffile:integer;
      FileSize:integer;Ffile:=FileOpen(FileName,fmOpenRead);
    FileSize:=FileSeek(PFile,0,2);