Чи відомі часові пояси часових поясів файлів Windows?


14

У мене є файл, який був змінений до або після того, як він був надісланий мені.
Однак він був створений в іншому часовому поясі, тому якщо дата зміни знаходиться у часовому поясі відправника, він останнім змінює його. Якщо він знаходиться в моєму часовому поясі, я змінив його.

Отже, чи знаєте ви, чи відомо про дати зміни файлів Windows часовим поясом?

Відповіді:


17

Часовий пояс - це артефакт перетворення з "екземплярів" у людину, доступну для читання датою та часом у деякому календарі.

Комп'ютери не люблять формат, прочитаний людиною (принаймні не так, як люди, принаймні), тому вони зазвичай зберігають екземпляри в зоні-нейтральному форматі. Наприклад, у файловій системі NTFS часові позначки зберігаються в UTC.

Отже, модифікація часу файлу зберігається належним чином, доки той, хто його модифікує, знає поточний час. Якщо ваша система Windows відображає "13:19" і вважає, що вона знаходиться в часовому поясі GMT-5, то випливає, що поточний момент у UTC є "18:19" і записує стільки ж у записах NTFS. Однак якщо ОС відображає "13:19", але вважає, що знаходиться в часовому поясі GMT + 3, тоді ОС вимкнеться на вісім годин, навіть якщо для людини, яка дивиться на екран, все здається нормальним.

Іншим моментом є те, що час модифікації файлу є властивістю системи зберігання, в якій зберігається файл, наприклад, файлової системи. Коли файл "надсилається", цей час не обов'язково проходить з ним. Деякі формати архіву (наприклад, Zip) вбудовують час модифікації файлу разом з файлом. Це не стосується файлу, надісланого "як є", прикріпленого до електронного листа, не прийде із часом модифікації файлу.


Це було rar-ed, gpg-ed та електронною поштою. Оскільки мітка часу модифікації була раніше, ніж створення, я думаю, вона витримала правильно.
бастібе

5

Деякі підказки ви можете побачити в документації Microsoft для FILETIME . У структурі немає положення про часовий пояс, але в тексті зазначено, що NTFS зберігає всі файли часу в UTC.


4

Часові позначки Windows відомі часовому поясу. Однак ваш механізм передачі файлів може не бути.


Це може бути проблемою ... Дякую, що вказали на це!
bastibe

3
Просто для уточнення, немає фактичного поля для часового поясу, але оскільки всі часи зберігаються в UTC та потім перетворюються на локальний час на льоту в Провіднику, це не проблема.
Девід Пфеффер

1
З точки зору досвіду користувачів, перше твердження здається правильним, але з технічної точки зору це абсолютно невірно. все-таки ваше роз'яснення відповідає правильному, і ви дійсно повинні відредагувати свою відповідь, щоб сказати це безпосередньо.
хит-кіхот

3

Як додаток, зауважте, що хоча дати зміни файлів з NTFS або інших файлових систем можуть бути відомими часовим поясом, дані EXIF ​​(наприклад, дата / час, зроблені фотографією з вашої камери), цілком можуть не бути і не можуть зберігатися як UTC так може виявити складність перетворення. Просто думка, якщо файл / створення / зміна дати / часу файлу, здається, не згоден.

Здається, я згадую Windows 7, вдосконалену на попередніх версіях з точки зору відображення EXIF-даних, тобто перетворення їх на льоту в цілі часи до поточного місцевого часу, якщо це можливо.


+1 EXIF ​​зазвичай просто зберігає місцевий час і не має можливості вказати часовий пояс :-(
sleske

2

Пам’ятайте, що файлові системи FAT НЕ знають часового поясу, але це впливає на вас, лише якщо ви переносите файл на пристрої з файловою системою FAT, що перетинає часові пояси.


Або під час літнього часу.
Брендан Абель

Це ж стосується файлів усередині архівів ZIP, оскільки формат успадковує форматування часових позначок FAT16 (точність 2 секунди та відсутність інформації про часовий пояс).
rustyx
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.