首页 > 科技 >

🎉 Python3 解决 zipfile 解压后中文文件名乱码问题 📁

发布时间:2025-03-28 03:01:55来源:

在使用 Python 的 `zipfile` 模块解压 `.zip` 文件时,有时会遇到中文文件名乱码的问题,这让人头疼。尤其是在文件名编码不统一的情况下,解压后的文件名可能变成一堆乱码字符。别担心!下面教你轻松解决这个问题。

首先,我们需要了解问题的核心:乱码通常是因为压缩文件中的文件名编码格式与当前系统默认编码不一致导致的。可以通过设置正确的编码来修复。以下是一个简单的解决方案👇:

```python

import zipfile

def unzip_file(zip_path, extract_path):

with zipfile.ZipFile(zip_path, 'r') as zip_ref:

for file in zip_ref.namelist():

设置正确的编码,例如 GBK 或 UTF-8

decoded_name = file.encode('cp437').decode('gbk')

zip_ref.extract(file, extract_path)

重命名文件

os.rename(os.path.join(extract_path, file),

os.path.join(extract_path, decoded_name))

使用示例

unzip_file("example.zip", "./extracted/")

```

通过将文件名从 `cp437` 编码转换为 `gbk`(或其他适合的编码),可以有效避免乱码问题。记得根据实际需求调整编码方式哦!💪

💡 小贴士:如果文件名编码不确定,可以尝试常见的几种编码方式(如 `utf-8`, `gbk`, `latin1` 等),找到最适合的一种即可。

希望这篇分享能帮到你,从此告别文件名乱码的烦恼!🌟

免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。