Windows 文件时间戳是否知道时区?

bas*_*ibe 16 windows time-zone timestamp date-modified

我有一个文件在发送给我之前或之后被修改过。
然而,它是在不同的时区创建的,所以如果修改日期在发件人的时区,是最后修改它的人。如果它在我的时区,修改了它。

那么,您知道 Windows 文件修改日期是否可以识别时区吗?

小智 18

时区是在某些日历中从“瞬间”转换为人类可读的日期和时间的产物。

计算机不喜欢人类可读的格式(至少不像人类那样多),因此它们通常以区域中性格式存储瞬间。例如,在 NTFS 文件系统中,时间戳以 UTC 格式存储。

因此,只要修改文件的人知道当前时间,文件时间修改就会被正确存储。如果您的 Windows 系统显示“13:19”并认为是在 GMT-5 时区,则它推断当前时刻是 UTC 中的“18:19”,并在 NTFS 内脏中写入同样多的内容。但是,如果操作系统显示“13:19”但认为处于 GMT+3 时区,则操作系统关闭 8 小时,即使对于看着屏幕的人来说,一切似乎都很好。

还有一点是,文件修改时间是文件所在的存储系统的属性,例如文件系统。当一个文件被“发送”时,时间并不一定会随着它而移动。一些存档格式(例如 Zip)将文件修改时间与文件一起嵌入。这不适用于“按原样”发送的文件,附加到电子邮件中,不会附带文件修改时间。


Mar*_*som 6

您可以在FILETIME的 Microsoft 文档中看到一些提示。结构中没有规定时区,但文本指出 NTFS 以 UTC 存储所有文件时间。