安装轮子
pip install pywin32
代码
from win32file import CreateFile, SetFileTime, GetFileTime, CloseHandle
from win32file import GENERIC_READ, GENERIC_WRITE, OPEN_EXISTING
from pywintypes import Time
import time
import sys
import os
def date2unix(human_date: str):
"""日期时间转Unix时间戳
Arguments:
human_date {[str]} -- 传入参数格式'20080808 12:24:12'
"""
pattern = '%Y%m%d %H:%M:%S'
epoch = Time(time.mktime(time.strptime(human_date, pattern)))
return epoch
def change_time(file_name: str, new_date: str):
"""修改文件所有时间
Arguments:
fileName {str} -- 文件名
newDate {str} -- 新时间,格式'20080808 12:24:12'
"""
fh = CreateFile(file_name, GENERIC_READ | GENERIC_WRITE,
0, None, OPEN_EXISTING, 0, 0)
cTime = mTime = aTime = date2unix(new_date)
SetFileTime(fh, cTime, aTime, mTime)
CloseHandle(fh)
if __name__ == "__main__":
fName = 'd:/test.txt'
new_date = '20280808 12:00:12'
change_time(fName, new_date)