在DELPHI程序中如何获取文件的大小和文件的修改时间?

jsandy 2003-02-08 06:21:08
在DELPHI程序中如何获取文件的大小和文件的修改时间?
...全文
447 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
goomoo 2003-02-09
  • 打赏
  • 举报
回复
最好的方法,使用api 函数:SHGetFileInfo
ehom 2003-02-09
  • 打赏
  • 举报
回复
var
FDateTime:TDateTime;
F,FSize:LongInt;

F:=FileOpen(FileName,fmOpenRead);
FSize:=FileSeek(F,0,2);
FDateTime:=FileDateToDateTime(FileGetDate(F));
jog81 2003-02-09
  • 打赏
  • 举报
回复
文件的大小可以这样取
procedure TForm1.Button1Click(Sender: TObject);
var
hFile : Integer;
begin
hFile:=CreateFile(PChar(edit1.Text), GENERIC_READ, 0, nil,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
Edit2.Text := IntToStr(GetFileSize(hFile, 0) div 1024)+'KB';
end;
jsandy 2003-02-09
  • 打赏
  • 举报
回复
getfilesize
getfiletime

这两个东东怎么用的啊?
grail_ 2003-02-08
  • 打赏
  • 举报
回复
可以用api函数
getfilesize
getfiletime
Billy_Chen28 2003-02-08
  • 打赏
  • 举报
回复
获取文件的大小
function FileLength(Filename:string):integer;
var
fp:file of byte;
begin
AssignFile(fp,Filename);
Reset(fp);
Result := FileSize(fp);
CloseFile(fp);
end;
或者
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));
Billy_Chen28 2003-02-08
  • 打赏
  • 举报
回复
获取文件修改时间:
function GetFileLastAccessTime(sFileName:string;uFlag:byte):TDateTime;
var
ffd:TWin32FindData;
dft:DWord;
lft:TFileTime;
h:THandle;
begin
h:=FindFirstFile(PChar(sFileName),ffd);
if h<>INVALID_HANDLE_VALUE then
begin
case uFlag of
FILE_CREATE_TIME:FileTimeToLocalFileTime(ffd.ftCreationTime,lft);
FILE_MODIFY_TIME:FileTimeToLocalFileTime(ffd.ftLastWriteTime,lft);
FILE_ACCESS_TIME:FileTimeToLocalFileTime(ffd.ftLastAccessTime,lft);
else
FileTimeToLocalFileTime(ffd.ftLastAccessTime,lft);
end;
FileTimeToDosDateTime(lft,LongRec(dft).Hi,LongRec(dft).Lo);
Result:=FileDateToDateTime(dft);
windows.FindClose(h);
end
else
result:=0;
end;

GetFileLastAccessTime()将会以 Delphi的 TdateTi
me格式返回你所指定的文件的最后访问日期

5,928

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧