博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于zipfile解压出现的字符编码问题
阅读量:5256 次
发布时间:2019-06-14

本文共 953 字,大约阅读时间需要 3 分钟。

使用zipfile解压文件时,出现了中文乱码问题,具体解决方法有两个,直接上代码吧。

def deco_zip(path, file_path):    os.mkdir(file_path)# 方式一    with zipfile.ZipFile(path, 'r') as zipTools:        # 从内存保存到硬盘再使用gbk编码读取出来避免乱码,        name_list = [item.encode('cp437').decode('gbk') for item in zipTools.namelist()]        print(name_list)        for index, value in enumerate(zipTools.namelist()):            print(index,value,type(value))            if not index:  #过滤掉第一个  第一个为文件夹名                continue            path1 = os.path.join(file_path, os.path.basename(name_list[index]))   # 取出对应的文件名            data = zipTools.read(value)             with open(path1, "wb") as f:                f.write(data)   # 转存为新的文件    # 方式二(推荐使用,具体使用方法请点我)    # with zipfile.ZipFile(path, 'r') as f:    #     for fn in f.namelist():    #         extracted_path = Path(f.extract(fn))    #         extracted_path.rename(fn.encode('cp437').decode('gbk'))

 

转载于:https://www.cnblogs.com/Dream-huang/p/9195317.html

你可能感兴趣的文章
CSS3文本
查看>>
jquery.validate.js表单验证 jquery.validate.js的用法
查看>>
coreos docker 尝新奇
查看>>
UE-9260使用说明1
查看>>
Linux磁盘管理(block与inode)
查看>>
LCA【p4281】[AHOI2008]紧急集合 / 聚会
查看>>
使用线程持续产生随机数
查看>>
线程安全
查看>>
day 18 作业 正则表达式
查看>>
jQuery初学
查看>>
VMware Kernel Module Updater - centos7 安装 vmware
查看>>
ASP.Net操作XML文档
查看>>
数组(一维数组)
查看>>
chrome Provisional headers are shown错误提示(转载)
查看>>
Angular Js表单
查看>>
内置的材质包含文件 .cginc
查看>>
Hadoop2.2.0环境下Sqoop1.99.3安装
查看>>
第一次作业
查看>>
转载 ListView动态更新数据
查看>>
tomcat6启动报错java.lang.ClassNotFoundException: 1catalina.org.apache.juli.FileHandler
查看>>