wndows下使用Python来修改文件时间戳
windows下的文件时间戳有三个属性,创建时间、修改时间、访问时间,*nix下方便的多了,可以使用touch来进行修改,windows下也可以使用专门的工具来进行修改(别跟我说你是通过修改操作系统时间后再创建文件哟!)
本文使用python2.6来进行处理,代码很简单,美中不足的是python提供的模块中并没有可以修改文件创建时间的,而修改时间和访问时间均可以任意修改,代码具体如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os,sys,time
from stat import *
filename=’D:\\2hei.net\\test.txt’
#指定期望修改后的时间
TimeForChange = ‘2007-01-10 07:51:21’
#转换时间格式为long型
ConverTime = time.mktime(time.strptime( TimeForChange,’%Y-%m-%d %H:%M:%S’) )
print TimeForChange+’ 转换后:’+str(ConverTime)print ‘————-修改前—————-‘
#创建时间
print ‘创建时间 ‘+time.ctime(os.path.getctime(filename))
#最后修改时间
print ‘修改时间 ‘+time.ctime(os.path.getmtime(filename))
#访问时间
print ‘访问时间 ‘+time.ctime(os.path.getatime(filename))#修改文件时间戳
times=(ConverTime,ConverTime)
#进行修改
os.utime(filename, times)print ‘————-修改后—————-‘
#创建时间
print ‘创建时间 ‘+time.ctime(os.path.getctime(filename))
#最后修改时间
print ‘修改时间 ‘+time.ctime(os.path.getmtime(filename))
#访问时间
print ‘访问时间 ‘+time.ctime(os.path.getatime(filename))首先在本地创建一个test.txt的文件(文件夹类似),先右键点击查看属性:
可以看到文件的三个基本属性,时间都是2008年12月7日,
程序运行的输出结果:
2007-01-10 07:51:21 转换后:1168386681.0
————-修改前—————-
创建时间 Sun Dec 07 18:16:56 2008
修改时间 Sun Dec 07 18:41:38 2008
访问时间 Sun Dec 07 00:00:00 2008
————-修改后—————-
创建时间 Sun Dec 07 18:16:56 2008
修改时间 Wed Jan 10 07:51:22 2007
访问时间 Wed Jan 10 00:00:00 2007
在右键点击查看文件属性,可以看到已经变成如下图:
可以看到文件的修改时间已经变成了2007年的1月10日,时间属性修改成功。
本文固定链接: https://www.2hei.net/2008/12/07/wndows_use_python_edit_filetime/ | 2hei.net
最活跃的读者