为什么从NTFS文件复制到FAT32更改文件的修改date?

将文件从NTFS分区复制到FAT32设备时,新文件的修改date有时会更改1或2秒。 为什么会这样呢?

这在文件同步程序中变得很明显,我有比较moddate和复制较旧的文件,在这种情况下,由于moddate是一个移动的目标,永远赶不上。 我试着在Windows资源pipe理器中做一个拖放副本,并做了同样的事情。

这是因为FAT32的最后写入时间为2秒。

换句话说,你所看到的是文件系统的限制:它不能准确地把最后修改的时间存储到第二个文件系统中。

同步程序将不得不允许在比较date时使用几秒钟的窗口,或者使用另一种方法来确定要复制哪些文件。 您可以校验文件以比较内容; 如果你没有太多的文件,这可以相当快。

我认为原来的FAT和FAT32之间的唯一区别是长文件名支持和FAT指针的大小(从16位到32),以允许在较大的磁盘上的较小的群集。

我不认为他们要求从DOS以来的最早的日子已经有2秒的分辨率的目录input格式。 这是为了节省磁盘空间,现在不那么重要,但当时非常重要。

另一个原因是因为所有的NTFS权限被删除。 我注意到NTFS中的所有用户configuration文件权限不在已经复制到FAT32的文件上。