Исходная дата создания скопированного файла - PullRequest
1 голос
/ 21 июня 2020

У меня есть копия ранее сгенерированного файла, и я хочу определить дату создания этого исходного файла.

Я могу использовать следующий код, чтобы получить дату создания этой копии, но не оригинала file:

import os.path, time
print("last modified: %s" % time.ctime(os.path.getmtime(file)))
print("created: %s" % time.ctime(os.path.getctime(file)))

Источник: http://www.aitek.ch/how-to-get-file-creation-modification-date-times-in-python/

Но при этом будет извлечена только дата создания копии, а не дата создания исходного файла. Я читал, что если вы копируете файл на windows, старая дата создания будет новой датой изменения, а дата копии будет новой датой создания. Я также прочитал, что в дате метды может быть настоящая дата создания исходного файла, но, похоже, я не могу ее найти.

Ответы [ 2 ]

2 голосов
/ 21 июня 2020

Это действительно вещь Windows. Windows не сохраняет время создания в скопированном файле исходного файла.

Копируется время модификации. Время создания - всегда текущее системное время.

Думаю, лучшее, что вы можете сделать, - это извлечь оригинал (если это вообще возможно) и взять время создания из исходного файла.

Там вы также можете использовать некоторые уловки, но это действительно зависит от вашей ситуации, соответствуют ли они вашим потребностям: https://superuser.com/questions/146125/how-to-preserve-file-attributes-when-one-copies-files-in-windows

1 голос
/ 21 июня 2020

Это проблема, связанная с операционной системой. Все зависит от того, что при копировании файлов мы обеспечиваем сохранение даты создания. На Windows нажатие клавиши Shift при копировании сохраняет дату создания. В противном случае файловая система не сохранит исходную дату создания. Возможно, вам придется вернуться к метаданным, хранящимся в самом файле, который зависит от формата файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...