我有一个以前生成的文件的副本,并希望检测该原始文件的创建日期。
我可以使用以下代码来获取该副本的创建日期,但不能获取原始文件的创建日期:
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上复制一个文件,旧的创建日期将是新的修改日期,而副本的日期将是新的创建日期。我也读到在metda日期中可能有一个真正的原始文件创建日期,但似乎我找不到它。
发布于 2020-06-21 16:56:21
这真的是Windows的事情。Windows不会在原始文件的复制文件中保留creation_time。
将复制修改时间。创建时间始终为当前系统时间。
我认为你能做的最好的事情就是检索原始文件(如果可能的话),并从原始文件中获取创建时间。
您也可以使用一些技巧,但这实际上取决于您的情况,它们是否满足您的需求:https://superuser.com/questions/146125/how-to-preserve-file-attributes-when-one-copies-files-in-windows
发布于 2020-06-21 16:56:17
这是一个与操作系统相关的问题。这完全取决于这样一个事实,即在复制文件时,我们确保保留创建日期。在Windows上,在复制时按住shift键将保留创建日期。否则,文件系统将不会保留原始创建日期。您可能需要重新排序到存储在文件本身中的元数据,这取决于文件格式。
https://stackoverflow.com/questions/62501440
复制