Python中解压一个包含中文文件名的ZIP文件到指定的目录

要在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替换为你希望解压到的目标目录的路径。确保你有权限在该目录中解压文件。

posted @ 2024-05-17 08:54  Oops!#  阅读(92)  评论(0编辑  收藏  举报