Các dấu thời gian của tệp Windows có nhận biết được múi giờ không?


14

Tôi có một tập tin đã được sửa đổi trước hoặc sau khi nó được gửi cho tôi.
Tuy nhiên, nó được tạo ở múi giờ khác, vì vậy nếu ngày sửa đổi nằm trong múi giờ của người gửi, anh ta là người cuối cùng sửa đổi nó. Nếu nó ở múi giờ của tôi, tôi đã sửa đổi nó.

Vì vậy, bạn có biết ngày sửa đổi tệp Windows có biết múi giờ không?

Câu trả lời:


17

Múi giờ là một vật phẩm chuyển đổi từ "nội dung" sang ngày và giờ có thể đọc được của con người trong một số lịch.

Máy tính không thích các định dạng có thể đọc được của con người (ít nhất là không nhiều như con người), vì vậy chúng thường lưu trữ nội dung ở định dạng trung tính vùng. Chẳng hạn, trong hệ thống tệp NTFS, tem thời gian được lưu trữ trong UTC.

Do đó, sửa đổi thời gian tập tin được lưu trữ đúng cách miễn là bất cứ ai sửa đổi nó biết thời gian hiện tại. Nếu hệ thống Windows của bạn hiển thị "13:19" và tin rằng nằm trong múi giờ GMT-5, thì nó cho rằng tức thời hiện tại là "18:19" trong UTC và ghi càng nhiều trong các ràng buộc NTFS. Tuy nhiên, nếu HĐH hiển thị "13:19" nhưng được cho là ở múi giờ GMT + 3, thì HĐH sẽ tắt tám giờ, ngay cả khi, đối với người nhìn vào màn hình, mọi thứ có vẻ ổn.

Một điểm khác là thời gian sửa đổi tệp là một thuộc tính của hệ thống lưu trữ trong đó tệp được lưu trữ, ví dụ: hệ thống tệp. Khi một tập tin được "gửi", thì thời gian đó không nhất thiết phải đi cùng với nó. Một số định dạng lưu trữ (ví dụ Zip) nhúng thời gian sửa đổi tệp cùng với tệp. Điều này không áp dụng cho một tệp được gửi "nguyên trạng", được đính kèm với email, sẽ không đi kèm với thời gian sửa đổi tệp.


Đó là rar-ed, gpg-ed và gửi qua email. Vì dấu thời gian sửa đổi sớm hơn so với sáng tạo, tôi đoán nó đã tồn tại chính xác.
bastibe

5

Bạn có thể thấy một số gợi ý trong tài liệu của Microsoft cho FILETIME . Không có quy định nào cho múi giờ trong cấu trúc, nhưng văn bản nói rằng NTFS lưu trữ tất cả thời gian tệp trong UTC.


4

Dấu thời gian của Windows là nhận biết múi giờ. Tuy nhiên, cơ chế chuyển tập tin của bạn có thể không được.


Đó có thể là một vấn đề ... Cảm ơn bạn đã chỉ ra điều này!
bastibe

3
Chỉ cần làm rõ, không có trường thực tế cho múi giờ, nhưng vì tất cả thời gian được lưu trữ trong UTC và sau đó được chuyển đổi thành giờ địa phương đang hoạt động trong Explorer, đó không phải là vấn đề.
David Pfeffer

1
từ quan điểm trải nghiệm người dùng, tuyên bố đầu tiên có vẻ đúng, nhưng từ quan điểm kỹ thuật, nó hoàn toàn sai. Mặc dù vậy, việc làm rõ của bạn đã đúng, và bạn thực sự nên chỉnh sửa câu trả lời của mình để nêu rõ điều đó.
quix quixote

3

Là một phụ lục, lưu ý rằng trong khi ngày sửa đổi tệp từ NTFS hoặc các hệ thống tệp khác có thể nhận biết được múi giờ, dữ liệu EXIF ​​(ví dụ: ngày / giờ ảnh được chụp bằng máy ảnh của bạn) có thể không được lưu trữ và cũng có thể không được lưu trữ dưới dạng UTC có thể chứng minh khó khăn để chuyển đổi. Chỉ cần suy nghĩ, trong trường hợp tệp tạo / sửa đổi / EXIF ​​ngày / giờ dường như không đồng ý.

Tôi dường như nhớ lại Windows 7 được cải tiến trên các phiên bản trước về mặt hiển thị dữ liệu EXIF, tức là chuyển đổi nó một cách nhanh chóng cho mục đích diaply sang giờ địa phương hiện tại nếu có thể.


+1 EXIF ​​thường chỉ lưu trữ giờ địa phương và không có cách nào để chỉ ra múi giờ :-(
sleske

2

Hãy nhớ rằng các hệ thống tệp FAT KHÔNG nhận biết múi giờ nhưng điều này chỉ ảnh hưởng đến bạn nếu bạn đang mang tệp trên thiết bị có hệ thống tệp FAT đang vượt qua các múi giờ.


Hoặc, trong thời gian tiết kiệm ánh sáng ban ngày.
Brendan Abel

Điều tương tự cũng áp dụng cho các tệp bên trong kho lưu trữ ZIP do định dạng kế thừa định dạng dấu thời gian FAT16 (độ chính xác 2 giây và không có thông tin múi giờ).
rustyx
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.