python使用zipfile解压文件中文乱码问题
中文在编程中真实后娘养的,各种坑爹,python3下中文乱码这个问题抓破了头皮,头疼。看了alex的文章,才有种恍然大悟的感觉(链接在底部)。
一句话,就是转换成unicode,压缩前是什么编码,使用什么编码encode再decode回来
先看测试代码:
#-*- coding: utf-8 -*-
import zipfile# 默认模式r,读
azip = zipfile.ZipFile("/Users/a/my_file/feise.zip", 'r')
# 返回所有文件夹和文件
zip_list = azip.namelist()
for zip_file in zip_list:print(zip_file)print(zip_file.encode('utf-8'))
真实文件名
绯色/w1985jc/沈嫣日记/8_【沈嫣日记】(33-完).txt
print(zip_file):
τ│╔½/ú≈ú▒ú╣ú╕ú╡úΩúπ/╔≥µ╠╚╒╝╟/8_í╛╔≥µ╠╚╒╝╟í┐ú¿33-═Ωú⌐.txt
print(zip_file.encode('utf-8'))
b'\xcf\x84\xe2\x94\x82\xe2\x95\x94\xc2\xbd/\xc3\xba\xe2\x89\x88\xc3\xba\xe2\x96\x92\xc3\xba\xe2\x95\xa3\xc3\xba\xe2\x95\x95\xc3\xba\xe2\x95\xa1\xc3\xba\xce\xa9\xc3\xba\xcf\x80/\xe2\x95\x94\xe2\x89\xa5\xc2\xb5\xe2\x95\xa0\xe2\x95\x9a\xe2\x95\x92\xe2\x95\x9d\xe2\x95\x9f/8_\xc3\xad\xe2\x95\x9b\xe2\x95\x94\xe2\x89\xa5\xc2\xb5\xe2\x95\xa0\xe2\x95\x9a\xe2\x95\x92\xe2\x95\x9d\xe2\x95\x9f\xc3\xad\xe2\x94\x90\xc3\xba\xc2\xbf33-\xe2\x95\x90\xce\xa9\xc3\xba\xe2\x8c\x90.txt'
废话不多说了,直接上最后成功代码,使用cp437可以正确读取部分,但是还有一部分却打印出来\u的编码,
因为看了alex的文章,又在catch中加上了utf-8的解码方式
#-*- coding: utf-8 -*-import zipfile # 默认模式r,读azip = zipfile.ZipFile("/Users/a/my_file/feise.zip", 'r')# 返回所有文件夹和文件zip_list = azip.namelist()for zip_file in zip_list: print(zip_file) print(zip_file.encode('utf-8')) try: zip_file = zip_file.encode('cp437').decode('gbk') except: zip_file = zip_file.encode('utf-8').decode('utf-8') print(zip_file)
一句话,就是转换成unicode,压缩前是什么编码,使用什么编码encode再decode回gbk、utf-8
本文参考文档:
https://www.cnblogs.com/CN-S/p/6566395.html
https://www.cnblogs.com/alex3714/articles/7550940.html
python使用zipfile解压文件中文乱码问题相关推荐
- python rarfile不支持中文路径_python使用zipfile解压文件中文乱码问题
中文在编程中真实后娘养的,各种坑爹,python3下中文乱码这个问题抓破了头皮,头疼.看了alex的文章,才有种恍然大悟的感觉(链接在底部). 一句话,就是转换成unicode,压缩前是什么编码,使用 ...
- java解压中文乱码_java解压文件中文乱码怎么处理
上次利用java自动的java.util.zip.ZipEntry和??java.util.zip.ZipFile来解压zip文件,今天发现程序在读取解压文件时居然报了空指针异常,debug程序后发现 ...
- windows 解压文件出现乱码 7zip解压文件中文乱码 解决方法
按照如下教程,更改windows默认编码格式为utf-8之后. https://blog.csdn.net/qq_43780850/article/details/129122210 解压文件时,文件 ...
- python解压版使用_【Python】使用 zipfile 解压含有中文文件名的 zip 文件
问题 在使用 Python 内置标准库 zipfile 解压文件时,如果压缩文件中有的文件含有中文,那么解压后就会发现文件名中的中文部分是乱码.例如我分别新建三个 txt 文件:文件1.txt,文件2 ...
- linux unzip乱码,Linux 中unzip解压时中文乱码的解决办法
Linux 中unzip解压时中文乱码的解决办法 Linux 中unzip解压时中文乱码的解决办法 当我们在linux中解压一个含有中文名字的压缩包如"资料.zip"时,如果直接使 ...
- Python 爬虫数据写入csv文件中文乱码解决以及天眼查爬虫数据写入csv
python爬虫数据写入csv文件中文乱码,用'utf-8'在pycharm中打开文件没有问题,但是用excel打开却出现了问题,以下为解决方法. (最近在练习爬虫,这个博文是对自己学习的记录和分享, ...
- python 保存本地乱码,解决python保存数据到csv文件中文乱码的方法
解决python保存数据到csv文件中文乱码的方法 发布时间:2020-07-08 13:49:53 来源:亿速云 阅读:695 作者:清晨 小编给大家分享一下解决python保存数据到csv文件中文 ...
- linux下mkdirs方法乱码,linux 解压zip中文乱码问题
本文用程序解决的的,有兴趣可以看一看,limux有解决中文乱码问题,,请去其他博客. 方法一:使用java importjava.io.File;importjava.io.FileOutputStr ...
- android zip中文乱码,Android中解压zip中文乱码处理
乱码原因分析 一般我们使用的Windows系统外部文件默认都是GBK编码方式,Mac系统默认的好像是UTF-8(同事的电脑就是,不知道其他人的是不是),Linux的没验证过,这里我讨论的是Window ...
最新文章
- 手机站点开发及手机中图片加速显示img的Canvas方法
- pytorch 训练过程acc_深度学习Pytorch实现分类模型
- qtp连接mysql 无驱动_QTP连接MySQL
- 【报告分享】2021年Z世代“潮力量”洞察报告.pdf(附下载链接)
- python android开发_Android与Python爱之初体验
- 工作流调度器azkaban 安装
- SQLmap注入学习实战 —— dvwa 从low到impossble
- H5微信中棋牌游戏域名防封解决方案
- 【无标题】Java画板简易实现
- 通信原理包络是什么意思_什么是PFC稳压开关电源?
- pythonturtle简单绘图_10分钟轻松学会 Python turtle 绘图
- android百度地图自动定位
- Bluetooth Profile Specification之(HFP篇)4.2 呼叫传输、设置、保持状态
- 生活随记 - 雁过留声
- STM32变频器 源程序是经批量验证过的原始代码,仅支持VF控制,C语言实现,完全开源,Keil uVision4编译无错误
- pylon保存图片_pylon界面中文说明 德国basler工业相机.pdf
- Inno Setup教程
- Linux自动挂载失败,Linux学习记录--开机挂载错误
- Python引入自定义模块
- svg通过虚线画形状
热门文章
- java三次方_java中a的三次方除了a*a*a还有其他表示?a^3不行?
- Ideal必备宝藏插件
- 服务分发,App创业者的下一个流量红利?
- 如何在Spring Boot中使用TDD写出高质量的接口
- 安规测试简介(二)-常见安规认证测试之CE认证
- 如何成为 Java 技术经理?
- 正点原子linux阿尔法开发板使用——platform平台总线模型
- 计算机多媒体技术及其应用论文,浅析计算机多媒体技术的应用
- 第二部分 单机以及编队控制实验—初级教程之安卓APP使用教程(13)
- try 的 catch 和 promise 的 catch 有什么区别