Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.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#_Windows_Datetime_Filesystems_Fileinfo - Fatal编程技术网

C# 获取文件移动日期时间

C# 获取文件移动日期时间,c#,windows,datetime,filesystems,fileinfo,C#,Windows,Datetime,Filesystems,Fileinfo,复制文件(在windows环境中)时,将修改创建和LastAccess日期时间,并可以使用FileInfo对象检索 但是,我找不到任何可靠的日期时间(直接链接到文件),当文件移动到文件夹中时,该日期时间会发生更改。移动文件时,windows是否会更新文件中的任何日期时间值(是否可以检索) 注意 我不是死胡同,我有很多变通办法。我只是想知道这是否可以直接在文件级别处理,以避免不必要的逻辑。所以这似乎就是Windows中的工作原理: 创建时间:如果目标文件已经存在,则保留其创建时间,否则设置为当前

复制文件(在windows环境中)时,将修改创建和LastAccess日期时间,并可以使用
FileInfo
对象检索

但是,我找不到任何可靠的日期时间(直接链接到文件),当文件移动到文件夹中时,该日期时间会发生更改。移动文件时,windows是否会更新文件中的任何日期时间值(是否可以检索)

注意
我不是死胡同,我有很多变通办法。我只是想知道这是否可以直接在文件级别处理,以避免不必要的逻辑。

所以这似乎就是Windows中的工作原理:

  • 创建时间:如果目标文件已经存在,则保留其创建时间,否则设置为当前系统时间
  • 上次修改时间:始终从源文件的修改时间复制
  • 上次访问时间:始终设置为当前系统时间
还有两个命令行工具可以使用/DCOPY:T开关保留目录的mtime,但这只适用于Vista和更高版本。 另一个可以保留时间戳的复制实用程序是

您可以在本页末尾找到RoboCopy的一些示例:

您是说当您将文件从一个目录复制到同一台机器上的另一个目录时,创建和LastAccess日期时间会被修改吗?真奇怪!!是的。最奇怪的是,修改日期时间保持不变,因此在创建日期时间之前就有一个修改日期时间。