跨平台文件创建和修改日期/时间检索
可以获取跨不同操作系统的文件创建和修改日期/时间一项复杂的任务。
修改日期
使用 os.path.getmtime() 跨平台获取文件修改日期相对简单,它提供上次修改的 Unix 时间戳。
创建日期
对于文件创建日期,由于平台特定,该过程变得更加复杂实现:
跨平台代码
结合这些特定于平台的方法,跨平台平台代码片段如下:
import os import platform def creation_date(path_to_file): """ Try to get the date that a file was created, falling back to when it was last modified if that isn't possible. See http://stackoverflow.com/a/39501288/1709587 for explanation. """ if platform.system() == 'Windows': return os.path.getctime(path_to_file) else: stat = os.stat(path_to_file) try: return stat.st_birthtime except AttributeError: # We're probably on Linux. No easy way to get creation dates here, # so we'll settle for when its content was last modified. return stat.st_mtime
此代码首先检查平台以应用适当的方法。在 Windows 上,它使用 os.path.getctime(),而在 Mac 和一些基于 Unix 的操作系统上,它尝试使用 .st_birthtime 检索创建日期。对于 Linux,它回退到通过 .st_mtime 获取的修改日期。
以上是如何可靠地获取不同操作系统上的文件创建和修改时间?的详细内容。更多信息请关注PHP中文网其他相关文章!