答案1
这个问题似乎在“Windows资源管理器可以显示的日期范围是多少?”该帖子的答案提供了一些很好的资源,提供了解释的线索。
我深入研究了这些资源和其他资源,并引用了我认为相关且重要的部分,因为你发布了赏金,所以对你来说,获得可验证的答案一定很重要。
笔记: 我认为这是 Windows 资源管理器/文件资源管理器的限制,而不是底层文件系统的限制。
根据《NTFS 时间戳解读》帖子和广泛测试的结果……
Windows 资源管理器图形用户界面:
时间戳范围:
- 1980-01-01 00:00:00 - 2107-12-31 23:59:57
- 2107-12-31 23:59:58 和 :59 显示为(空白)
范围之外的剩余时间戳被翻译为(空白)
结果解释
就覆盖范围而言,上面介绍的工具都不是完美的:它们都受到某种限制,无法正确翻译时间段。按支持的时间范围排序,表现最好的工具如下:
- Windows 资源管理器图形用户界面(1980–2107)
根据如果我将文件创建、访问或修改时间设置为 1980 年 1 月 1 日午夜,为什么它就会消失?这里有相关信息。
一位客户发现,如果他们的程序使用该
SetFileTime
函数将网络文件的创建、访问或修改时间设置为“1980 年 1 月 1 日午夜”这一特定值,那么相应的时间戳就会被删除。
前一段时间,我讨论了你可能会遇到的几种时间戳格式。今天,我们将根据这些信息采取合理的步骤,列出您可能遇到的特殊值。请注意,如果您应用时区调整,实际时间戳可能会偏移最多一天。
- 日期:1969 年 12 月 31 日 - 1970 年 1 月 1 日
- 解释:值为 -1 或 0 作为 time_t。
所有这些特殊值都有一个共同点:如果你看到它们,那很可能是一个错误。通常,它们会出现在某人未能进行正确的错误检查,最终将错误代码视为有效的返回值(特殊值 0、-1 和 0xFFFFFFFF 经常用作错误代码。)
更多资源
答案2
由于 Windows 10 版本 1809 的众多文件破坏错误之一,您的日期字段在升级到该版本后被破坏。由于 Windows 中最早的可能日期是 1970 年 1 月 1 日,因此您的日期字段已设置为零(或可能是 -1)。
如果您希望恢复原始日期,唯一的选择是从备份中恢复这些文件。如果您没有备份,您可以将 U 盘上的所有文件和文件夹的日期重置为某个任意日期,这样它们就不会保持空白。
可以使用的一些工具包括:
文件日期校正器 (20 美元)
这是唯一一款尝试从文档和图像等适当文件中包含的元数据中找出原始日期的工具。在试用模式下,它将显示付费版本将执行的更改。属性改变者
通过右键单击使用的 Windows 资源管理器插件。
如果这些还不够的话,你还可以在文章中找到更多
5 个免费软件可在 Windows 中批量更改文件时间戳。