欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > python >内容正文

python

Python zipfile 文件名称编码 file_name.encode(‘cp437‘).decode(‘gbk‘)

发布时间:2025/3/20 python 32 豆豆
生活随笔 收集整理的这篇文章主要介绍了 Python zipfile 文件名称编码 file_name.encode(‘cp437‘).decode(‘gbk‘) 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

主要是处理压缩包里的中文,不出现乱码

with zipfile.ZipFile('love.zip', 'r') as zipobj: #读取压缩包for file_name in zipobj.namelist(): #遍历名称info = zipobj.getinfo(file_name)file_name = file_name.encode('cp437').decode('gbk')lis.append([file_name,info.file_size])

在遍历名称的时候有一步

file_name = file_name.encode('cp437').decode('gbk')

zipfile默认对于文件名编码只识别cp437和utf-8

对于采用其他编码方式的文件,zipfile解压出来的就会是乱码

我们可以先把它encode成cp437然后再decode成GBK

最后在把文件重命名回去即可。

总结

以上是生活随笔为你收集整理的Python zipfile 文件名称编码 file_name.encode(‘cp437‘).decode(‘gbk‘)的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。