Dlaczego system Windows nazywa jeden z plików „nowszym”, a ich znaczniki czasu są takie same?

17

Kiedy system Windows wyświetla to okno dialogowe, w jaki sposób porównuje, która z tych dwóch zmodyfikowanych dat jest „nowsza”?

Na początku myślałem, że Windows porównuje atrybut Data utworzenia i wykorzystuje wynik tego porównania do oznaczenia jednego lub drugiego „(nowszym)”. (Jeśli plik został skopiowany do określonej lokalizacji, może on mieć datę utworzenia, kiedy nastąpiła kopia, a nie oryginalną datę utworzenia pliku.) Jednak odtworzenie go z innym plikiem, którego wynikiem jest „nowszy „wydaje się być odwrotnie:

Pokazuje się dla Kopiuj lub Przenieś:

A w tle plik w teście2 to wcześniej utworzona kopia pliku w teście1.

WBT
źródło
Jaki jest typ systemu plików na dysku E :? FAT32 ? NTFS ? Czy to dysk sieciowy?
Peter Mortensen
E: i C: (gdzie „starszy” plik został skopiowany do iz powrotem) to NTFS.
WBT

Odpowiedzi:

22

Znaczniki czasu w systemie plików NTFS mają rozdzielczość 100 nanosekund (0,0000001 s). Nawet jeśli okno właściwości wyświetla tę samą zaokrągloną wartość, może się zdarzyć, że pliki zostały utworzone np. W odstępach dziesiętnych sekundy.

(Większość systemów plików mierzy czasy w μs lub ns. FAT32 jest trochę reliktem i zaokrągla znaczniki czasu do 2 sekund.)

Wypróbuj jedną z następujących metod, aby porównać pełne znaczniki czasu:

wmic datafile where name="c:\\foo\\bar.txt" get lastmodified

PowerShell:

(Get-ChildItem c:\foo\bar.txt).LastWriteTime.ToString("o")
użytkownik1686
źródło
Pamiętaj, że plik w teście1 został utworzony przez skopiowanie pliku z test2.
WBT
Czy w takim przypadku możesz sprawdzić, czy znaczniki czasu są w rzeczywistości identyczne?
user1686,
5
To wydaje się być odpowiedzią; ostateczna akceptacja jest prawdopodobna. Jeden daje LastModified z „20170115002742.000000-300”, a drugi daje LastModified z „20170115002742.160883-300”. W dodatkowych testach wydaje się, że niektóre operacje kopiowania zacierają ułamkową drugą informację.
WBT
4
Jest nawet gorzej. FAT32 przechowuje czasy plików jako czas lokalny , co powoduje różnego rodzaju ból i smutek. Ponadto, podczas gdy czas modyfikacji ma rozdzielczość 2 sekund, czas tworzenia ma rozdzielczość 10 sekund, a czas dostępu ma rozdzielczość 1 dzień!
Cody Gray