请问取文件大小和时间的方法或函数,请望大家给于详细的答复,在下不胜感激。

解决方案 »

  1.   

    uses  Systemfunction FileSize(var F): Integer;function FileDateToDateTime(FileDate: Integer): TDateTime;详细用法  去看help
      

  2.   

    function FSize(FileName: string): LongInt;
    var
      F: File;
    begin
      AssignFile(F, FileName);
      reset(F,1);
      Result := FileSize(F);
      CloseFile(F);
    end;
      

  3.   

    var
      f:Longint;
      FSize:integer;
      FDateTime:TDateTime;f:=FileOpen(FileName,fmOpenRead);
    FDateTime:=FileDateToDateTime(FileGetDate(f));
    FSize:=FileSeek(PFile,0,2);
    FileClose(f);
      

  4.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      f:file of byte;
      i:integer;
    begin
      AssignFile(f,'c:\Netlog.txt');
      Reset(f);
      try
        i:=trunc(filesize(f)/1024);
        showmessage(inttostr(i));
      finally
        CloseFile(f);
      end;
    end;
      

  5.   

    上面的代码调用Reset时对只读文件有问题所以用FSize:=FileSeek(f,0,2);更好
      

  6.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      F : Cardinal;
      d : DWORD;
    begin
      F := CreateFile('C:\aa.txt',0,FILE_SHARE_READ, 0,OPEN_ALWAYS ,FILE_ATTRIBUTE_NORMAL ,0);
      if F <> INVALID_HANDLE_VALUE then
      begin
        D := GetFileSize(F, nil);
        showmessage(floattostr(d) + 'Byte');
      end;
      Showmessage(DatetoStr(FileDateToDateTime(FileAge('C:\aa.txt'))));end;