要在Python中解压一个包含中文文件名的ZIP文件到指定的目录,你可以指定解压文件时所需的字符编码。下面是一个示例代码:
import zipfile
import os
zip_file_path = '/path/to/your/chinese_file.zip'
extract_dir = '/path/to/extract/directory'
# 创建一个解压目标目录
os.makedirs(extract_dir, exist_ok=True)
# 打开zip文件,并指定字符编码为gbk(根据中文文件名的编码而定)
with zipfile.ZipFile(zip_file_path, 'r') as zip_ref:
for info in zip_ref.infolist():
info.filename = info.filename.encode('cp437').decode('gbk') # 修改文件名编码为gbk
zip_ref.extract(info, extract_dir)
print(f"ZIP file {zip_file_path} extracted to {extract_dir}.")
在这段代码中,需要注意修改文件名的编码为适当的编码,以确保正确解压包含中文文件名的ZIP文件。将/path/to/your/chinese_file.zip
替换为你的中文文件名的ZIP文件路径,将/path/to/extract/directory
替换为你希望解压到的目标目录的路径。确保你有权限在该目录中解压文件。