如何才能知道一个文件的修改时间?
1楼: 在windows资源管理器里选择一个文件点击右键选择属性会有一个“修改时间”项,请问如何才能取得这个时间
字串9
2楼: 用GetFileTime,其中的第三个参数就是 字串9 3楼: GetFileTime //uses Windows; procedure TForm1.Button1Click(Sender: TObject); Var hFile : THandle; FT : TFileTime; ST : TSystemTime; Begin If Not OpenDialog1.Execute Then Exit; hFile := FileOpen(OpenDialog1.FileName, fmOpenWrite or fmShareDenyNone); GetFileTime(hFile, @FT, @FT, @FT); FileTimeToSystemTime(FT, ST); //ST.wYear、ST.wMonth... FileClose(hFile); end; 字串5 4楼: 用楼上的方法取到了两个文件的时间,但如何比较这两个时间是否相同呢?字串3
5楼: If (FT1.dwLowDateTime=FT2.dwLowDateTime) And (FT1.dwLowDateTime=FT2.dwLowDateTime)
showmessage(‘时间相同‘); 字串3 6楼: {获取文件时间 需在Uses加入ShellAPI}
{最后修改时间11:14 2002-04-03,整理:JUKY}
function TF_shuxing.getfiletime(sfilename:string;timetype:integer):tdatetime;
var
ffd:TWin32FindData;
dft:DWord;
lft,Time:TFileTime;
h:THandle;
begin
h:=windows.FindFirstFile(pchar(sfilename),ffd);
if h<>INVALID_HANDLE_VALUE then begin
case timetype of
0: time:=ffd.ftCreationTime;
1: time:=ffd.ftLastAccessTime;
2: time:=ffd.ftLastWriteTime;
end;
windows.FindClose(h);
filetimetolocalfiletime(time,lft);
filetimetodosdatetime(lft,longrec(dft).hi,longrec(dft).lo);
result:=filedatetodatetime(dft);
filedate:=datetimetostr(result);
end
else result:=0;
end; 字串5
7楼: 接受答案了.字串6