博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
delphi 操作文件时间的函数
阅读量:6967 次
发布时间:2019-06-27

本文共 1494 字,大约阅读时间需要 4 分钟。

hot3.png

function CovFileDate(Fd :_FileTime): TDateTime;{转换文件的时间格式}var  Tct:_SystemTime;  Temp:_FileTime;begin  FileTimeToLocalFileTime(Fd, Temp);  FileTimeToSystemTime(Temp, Tct);  CovFileDate := SystemTimeToDateTime(Tct);end;procedure GetFileTime(const Tf:string);{ 获取文件时间,Tf表示目标文件路径和名称 }const  Model='yyyy/mm/dd,hh:mm:ss'; { 设定时间格式 }var  Tp: TSearchRec; { 申明Tp为一个查找记录 }  T1, T2, T3: string;begin  FindFirst(Tf,faAnyFile,Tp); { 查找目标文件 }  T1 := FormatDateTime(Model, CovFileDate(Tp.FindData.ftCreationTime));  { 返回文件的创建时间 }  T2 := FormatDateTime(Model, CovFileDate(Tp.FindData.ftLastWriteTime));  { 返回文件的修改时间 }  T3 := FormatDateTime(Model, Now);  { 返回文件的当前访问时间 }  FindClose(Tp);end;procedure SetFileDateTime(const FilePathName:string; aDate: TDateTime);{ 设置文件时间,Tf表示目标文件路径和名称 }var   Dt1, Dt2: Integer;  Fs: TFileStream;  Fct, Flt: TFileTime;begin  Dt1 := DateTimeToFileDate(aDate);  Dt2 := DateTimeToFileDate(aDate);  { 转换用户输入在DataTimePicker中的信息 }  try    FS := TFileStream.Create(FilePathName, fmOpenReadWrite);    try      if DosDateTimeToFileTime(LongRec(DT1).Hi, LongRec(DT1).Lo, Fct) and          LocalFileTimeToFileTime(Fct, Fct) and          DosDateTimeToFileTime(LongRec(DT2).Hi, LongRec(DT2).Lo, Flt) and          LocalFileTimeToFileTime(Flt, Flt)      then        SetFileTime(FS.Handle, @Fct, @Flt, @Flt); { 设置文件时间属性 }    finally      FS.Free;    end;  except    MessageDlg('日期修改操作失败!', mtError, [mbOk], 0);    { 因为目标文件正在被使用等原因而导致失败 }  end;end;

转载于:https://my.oschina.net/u/582827/blog/225375

你可能感兴趣的文章
PHP扩展模块Memcache Redis Mssql部署
查看>>
盘点11个面向文档的开源NoSQL数据库
查看>>
还原dede数据后系统基本参数空白无显示的解决方法
查看>>
数据分层
查看>>
在VSO8中使用QT
查看>>
python学习
查看>>
PHP问题 —— PHP Parse error: syntax error, unexpected
查看>>
数据库之Schema设计
查看>>
java 应用连接oracle 超级慢的解决方法
查看>>
tcp_tw_recycle和tcp_timestamps导致connect失败问题
查看>>
mybatis中的#和$的区别
查看>>
Linux中的echo简介(自我总结)(44)
查看>>
springboot oauth2 fetch 关于跨域请求的问题
查看>>
PostgreSQL调研
查看>>
Spring Cloud Config 集中式配置
查看>>
java生成验证码
查看>>
Java Socket通信编程
查看>>
getopt函数—分析命令行参数
查看>>
最近的奇葩乱码
查看>>
VirtualBox6.0中CentOS7.6 网络配置
查看>>