Windows 上的 FAT 日期解析时间戳

FAT date resolution timestamps on Windows

According to Wikipedia,FAT32 对上次修改时间的日期分辨率为 2 秒。此文件时间可在 WinAPI 中获得,在 C# 中使用 File.IO 作为 DateTime 获得,这两者都与此有关。

日期解析在实践中意味着什么?这是否意味着它只能以 2 秒为间隔标记最后修改文件时间,或者它是否意味着它标记的日期只能在 2 秒内准确?

换句话说(以yyyy-MM-dd HH:mm:ss:fffffff DateTime format为例),是不是...

  1. 时间戳限制为 2 秒偶数时间间隔,例如:2015-07-16 14:28:36:00000002015-07-16 14:28:38:00000002015-07-16 14:28:40:0000000

...或者...

  1. 任意时间戳,只是时间仅在特定时间间隔内准确:2015-07-16 14:28:36:1234567 - 这意味着最后一次写入实际上可能发生在该时间之前 2 秒的任何地方( 2015-07-16 14:28:34:1234567) 在此时间后最多 2 秒 (2015-07-16 14:28:38:1234567)?

  2. 还有别的吗?

表示时间中的秒数只能是偶数。

directory entry for the FAT file system只有一个5位的字段用于存储时间中的秒数。这将字段中存储的数字限制在 0-31 范围内,将其乘以 2 以获得秒数。 (此字段中的值 30 和 31 无效。)