加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何克隆文件?

发布时间:2020-12-15 09:15:24 所属栏目:大数据 来源:网络整理
导读:我想制作一个相同的文件副本,我知道如何在新文件中复制文件的内容,但我不知道如何复制属性和日期. 我尝试了以下代码,但它在Delphi 2009中不起作用: SrcHandle:=CreateFile(PWideChar('?'+SrcName),GENERIC_READ,FILE_SHARE_READ,nil,OPEN_EXISTING,FILE_
我想制作一个相同的文件副本,我知道如何在新文件中复制文件的内容,但我不知道如何复制属性和日期.

我尝试了以下代码,但它在Delphi 2009中不起作用:

SrcHandle:=CreateFile(PWideChar('?'+SrcName),GENERIC_READ,FILE_SHARE_READ,nil,OPEN_EXISTING,FILE_FLAG_SEQUENTIAL_SCAN,0);
DestHandle:=CreateFile(PWideChar('?'+DestName),GENERIC_WRITE,CREATE_ALWAYS,SrcHandle);

请注意,目标CreateFile的最后一个参数是sorce文件的句柄. Delphi说如果我这样做,它会将“属性和扩展属性”复制到新文件中.但它不……

解决方法

使用IOUtils中的TFile.Copy().操作系统提供文件复制功能,此功能利用它们.此函数调用Windows CopyFile函数.如果您愿意,可以直接打电话.

以这种方式复制文件后,将复制所有属性.最后一步是文件时间戳.使用GetFileTime和SetFileTime执行此步骤.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读