?? testfunctionunit.pas
字號:
unit TestFunctionUnit;
interface
uses
Classes, Windows, SysUtils;
function CovFileDate(Fd:_FileTime):TDateTime;
function GetFileLastModifyTime(sFileName:string):TDateTime;
function GetFileSize(sFileName:string): real;
function SendFile(sFileName, aFileName:String):Boolean;
implementation
function CovFileDate(Fd:_FileTime):TDateTime;
{ 轉換文件的時間格式 }
var
Tct:_SystemTime;
Temp:_FileTime;
begin
FileTimeToLocalFileTime(Fd,Temp);
FileTimeToSystemTime(Temp,Tct);
CovFileDate:=SystemTimeToDateTime(Tct);
end;
{function GetFileLastModifyTime(sFileName:string):TDateTime;
var
FileOp : TOFStruct ;
FHandle : THandle ;
FInfo : TByHandleFileInformation ;
dtCreate : TSystemTime;
dtGet:TDateTime;
Temp:_FileTime;
begin
FHandle:= openfile(pchar(sFileName),FileOp,OF_READ);
GetFileInformationByHandle(FHandle,FInfo);
FileTimeToLocalFileTime(FInfo.ftLastWriteTime,Temp);
FileTimeToSystemTime(Temp,dtCreate);
dtGet:=SystemTimeToDateTime(dtCreate);
{result:= StrToDateTime(inttostr(dtCreate.wYear)+'-'+inttostr(dtCreate.wMonth)+'-'+inttostr(dtCreate.wDay)
+' '+inttostr(dtCreate.wHour)+':'+inttostr(dtCreate.wMinute)+':'+inttostr(dtCreate.wSecond));
result:=dtGet;
_lclose(FHandle);
end; }
function GetFileLastModifyTime(sFileName:string):TDateTime;
{ 獲取文件時間,Tf表示目標文件路徑和名稱 }
const
Model='yyyy/mm/dd hh:mm:ss'; { 設定時間格式 }
var
Tp:TSearchRec; { 申明Tp為一個查找記錄 }
//T1,T2,T3:string;
begin
FindFirst(sFileName,faAnyFile,Tp); { 查找目標文件 }
///T1:=FormatDateTime(Model,CovFileDate(Tp.FindData.ftCreationTime)));
{ 返回文件的創建時間 }
result:=StrToDateTime(FormatDateTime(Model,CovFileDate(Tp.FindData.ftLastWriteTime)));
{ 返回文件的修改時間 }
//T3:=FormatDateTime(Model,Now));
{ 返回文件的當前訪問時間 }
FindClose(Tp);
end;
function GetFileSize(sFileName:string): real;
var f : TFileStream;
begin
if FileExists(sFileName) then
begin
f:= TFileStream.Create(sFileName,fmOpenRead or fmShareDenyNone);
Result:= f.Size/1024;
F.Free;
end
else
Result:= 0;
end;
function SendFile(sFileName, aFileName:String):Boolean;
var
sourceFile: file;
aimFile: file;
NumRead,NumWrite:integer;
Buf:array[1..2048] of Char;
noWrong:Boolean;
begin
noWrong:=True;
try
try
AssignFile(sourceFile,sFileName);
Reset(sourceFile,1);
AssignFile(aimFile,aFileName);
Rewrite(aimFile,1);
repeat
BlockRead(sourceFile,Buf,SizeOf(Buf),NumRead);
BlockWrite(aimFile,Buf,NumRead,NumWrite);
until (NumRead = 0)or(NumWrite <> NumRead);
except
noWrong:=False;
end;
finally
CloseFile(sourceFile);
CloseFile(aimFile);
end;
result:=noWrong;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -