【问题标题】:Getting file move datetime获取文件移动日期时间
【发布时间】:2014-02-04 16:38:17
【问题描述】:

当您复制文件时(在 Windows 环境中),Creation 和 LastAccess 日期时间会被修改,并且可以使用 FileInfo 对象进行检索。

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

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

【问题讨论】:

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

标签: c# windows datetime filesystems fileinfo


【解决方案1】:

所以这似乎是它在 Windows 中的工作方式:

  • 创建时间:如果目标文件已经存在,则保留其创建时间,否则设置为当前系统时间。
  • 上次修改时间:始终从源文件的修改时间复制。
  • 上次访问时间:始终设置为当前系统时间。

RoboCopyRichCopy 是一对命令行工具,可以使用 /DCOPY:T 开关保留目录的 mtime,但这仅适用于 Vista 和更新版本。 另一个可以保存时间戳的复制工具是XXCOPY

您可以在本页末尾找到一些 RoboCopy 示例: http://www.computerhope.com/robocopy.htm

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-16
    • 2018-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多