文件的大小、创建时间、修改时间和访问时间
参考资料来源互联网
【取文件的大小】
function GetFileSize(const FileName: string): Int64;
var
Info: TWin32FindData;
Hnd: THandle;
begin
Result := -1;
Hnd := FindFirstFile(PChar(FileName), Info);
if (Hnd <> INVALID_HANDLE_VALUE) then
begin
Windows.FindClose(Hnd);
Int64Rec(Result).Lo := Info.nFileSizeLow;
Int64Rec(Result).Hi := Info.nFileSizeHigh;
end;
end;
【取文件的最后修改时间】
function GetFileLastWriteTime(const FileName: String): TDateTime;
var
FileHandle: integer;
CreatTime, LastAccessTime, LastWriteTime: TFileTime;
LocalFileTime: TFileTime; //本时区的文件时间
SystemTime: TSystemTime;
DateTime: Tdatetime;
begin
FileHandle := FileOpen(FileName, fmOpenRead or fmShareDenyNone);
if FileHandle > 0 then
begin
//获取文件的创建、最近访问、最近读写时间
GetFileTime(FileHandle, @CreatTime, @LastAccessTime, @LastWriteTime);
FileClose(FileHandle);
//LastWriteTime - > LocalFileTime
FileTimeToLocalFileTime(LastWriteTime, LocalFileTime);
//LocalFileTime - > SystemTime
FileTimeToSystemTime(LocalFileTime, SystemTime) ;
//SystemTime - > DateTime
DateTime := SystemTimeToDateTime(systemTime);
//
Result := DateTime;
end
else begin
Result := 0;
end;
end;
【 取文件时间】
function GetFileDate(const FileName: string;
var CreationTime, LastWriteTime, LastAccessTime: TFileTime): Boolean;
var
FileHandle: Integer;
begin
FileHandle := FileOpen(FileName, fmOpenRead or fmShareDenyNone);
if FileHandle > 0 then
begin
GetFileTime(FileHandle, @CreationTime, @LastAccessTime, @LastWriteTime);
FileClose(FileHandle);
Result := True;
end
else begin
Result := False;
end;
end;
【设置文件时间】
function SetFileDate(const FileName: string; CreationTime,
LastWriteTime, LastAccessTime: TFileTime): Boolean;
var
FileHandle: Integer;
begin
FileHandle := FileOpen(FileName, fmOpenWrite or fmShareDenyNone);
if FileHandle > 0 then
begin
SetFileTime(FileHandle, @CreationTime, @LastAccessTime, @LastWriteTime);
FileClose(FileHandle);
Result := True;
end
else begin
Result := False;
end;
end;
【附注】
function FileOpen(const FileName: string; Mode: LongWord): Integer;
打开指定的文件,如果操作成功,返回文件的句柄,为正数。
如果返回的值为-1, 则表示操作失败。
【参数说明】
FileName - 要打开的文件名字(含路径)
Mode - 打开的模式,详见下表: