win 系统修改文件的日期
- 创建日期
- 访问日期
- 修改日期
安装依赖
pip install pywin32
test.py
import os
import win32file
import pywintypes
def set_file_times(file_path, creation_time=None, access_time=None, modification_time=None):
"""
设置文件的创建时间、访问时间和修改时间。
:param file_path: 文件路径
:param creation_time: 创建时间 (datetime object)
:param access_time: 最后访问时间 (datetime object)
:param modification_time: 最后修改时间 (datetime object)
"""
handle = win32file.CreateFile(
file_path,
win32file.GENERIC_READ | win32file.GENERIC_WRITE,
0,
None,
win32file.OPEN_EXISTING,
0,
None
)
try:
def to_filetime(dt):
if dt is not None:
return pywintypes.Time(dt)
return None
creation_ft = to_filetime(creation_time)
access_ft = to_filetime(access_time)
modification_ft = to_filetime(modification_time)
win32file.SetFileTime(handle, creation_ft, access_ft, modification_ft)
finally:
handle.Close()
from datetime import datetime
file_path = 'D:\workspace\ctrl_end_time\main.cpp'
new_time = datetime(2020, 1, 9, 14, 48)
set_file_times(file_path, creation_time=new_time, access_time=new_time, modification_time=new_time)
print(f"文件 '{file_path}' 的时间已被设置为 {new_time}")