Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
批量备份硬盘驱动器而不修改访问时间C#_C#_File Io_File Access_Usb Flash Drive - Fatal编程技术网

批量备份硬盘驱动器而不修改访问时间C#

批量备份硬盘驱动器而不修改访问时间C#,c#,file-io,file-access,usb-flash-drive,C#,File Io,File Access,Usb Flash Drive,我正试图写一个简单的程序来备份我的闪存驱动器。我希望它在后台自动、安静地工作,而且我也希望它尽可能快。问题是,重置所有的访问时间对我来说是无用的,我想避免这种情况。我知道我可以读取访问时间并将其设置回原来的时间,但我打赌有一天它会失败。在不改变文件的情况下读取文件会简单得多。 还有,最快的方法是什么?比如说,闪存驱动器和外部硬盘驱动器之间有什么区别 我是用C#写这篇文章的,因为这是最简单的方法,而且可能会持续更多代的Windows。这不是一个合乎逻辑的假设。FileInfo.LastAccess

我正试图写一个简单的程序来备份我的闪存驱动器。我希望它在后台自动、安静地工作,而且我也希望它尽可能快。问题是,重置所有的访问时间对我来说是无用的,我想避免这种情况。我知道我可以读取访问时间并将其设置回原来的时间,但我打赌有一天它会失败。在不改变文件的情况下读取文件会简单得多。 还有,最快的方法是什么?比如说,闪存驱动器和外部硬盘驱动器之间有什么区别


我是用C#写这篇文章的,因为这是最简单的方法,而且可能会持续更多代的Windows。

这不是一个合乎逻辑的假设。FileInfo.LastAccessTime属性在.NET规范中被冻结,它肯定会比您的C#代码更持久。如果有一个版本的Windows由于某种神秘的原因不支持文件上的上次访问时间戳,那么以合理的方式重新实现该属性将是Microsoft的负担。属性的语义也被冻结了,在过去的17年中,永远不会有一个Windows版本允许您读取文件,但不更新值


顺便说一句,您还应该重置FileAttributes.Archive位。

这不是一个合乎逻辑的假设。FileInfo.LastAccessTime属性在.NET规范中被冻结,它肯定会比您的C#代码更持久。如果有一个版本的Windows由于某种神秘的原因不支持文件上的上次访问时间戳,那么以合理的方式重新实现该属性将是Microsoft的负担。属性的语义也被冻结了,在过去的17年中,永远不会有一个Windows版本允许您读取文件,但不更新值


顺便说一句,您还应该重置FileAttributes.Archive位。

FileAttributes.Archive?那有什么用?另外,我想使用C#,因为我不必为Windows 8重新编译它。存档位表示该文件尚未备份。当文件被修改时,它由Windows自动设置。备份程序必须将其重置。所有这些都可以从C#中完成,使用FileInfo.Attributes属性。@johnathan您不必为每个版本的Windows重新编译本机应用程序。为XP编写的应用程序在7.FileAttributes.Archive中应该可以正常工作?那有什么用?另外,我想使用C#,因为我不必为Windows 8重新编译它。存档位表示该文件尚未备份。当文件被修改时,它由Windows自动设置。备份程序必须将其重置。所有这些都可以从C#中完成,使用FileInfo.Attributes属性。@johnathan您不必为每个版本的Windows重新编译本机应用程序。为XP编写的应用程序应该在7小时内可以正常工作。