ubuntu 16.04L解压zip文件出现乱码
来源:互联网 发布:淘宝投诉投诉 编辑:程序博客网 时间:2024/06/08 11:08
开个传送门:http://blog.csdn.net/qq_27803491/article/details/50375092
下附原文:
常遇到这个问题,今天终于解决了,参考网址:http://forum.ubuntu.org.cn/viewtopic.php?t=175405
有2种方式解决问题:
1. 通过unzip行命令解压,指定字符集
有2种方式解决问题:
1. 通过unzip行命令解压,指定字符集
unzip -O CP936 xxx.zip(用GBK, GB18030也可以)
有趣的是unzip的manual中并无这个选项的说明, unzip --help对这个参数有一行简单的说明。
2. 在环境变量中,指定unzip参数,总是以指定的字符集显示和解压文件
/etc/environment中加入2行
UNZIP="-O CP936"
ZIPINFO="-O CP936"
这样Gnome桌面的归档文件管理器(file-roller)可以正常使用unzip解压中文,但是file-roller本身并不能设置编码传递给unzip。
我先用了第二种方法,但是发现自己没装file-roller,于是用第一种方法指定字符集,然后就搞定了,但是还是觉得这个CP936。。。。记不住阿,不知道还有没有更好的方法
著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:Latm Ake
链接:http://www.zhihu.com/question/20523036/answer/35225920
来源:知乎
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:Latm Ake
链接:http://www.zhihu.com/question/20523036/answer/35225920
来源:知乎
由于zip格式中并没有指定编码格式,Windows下生成的zip文件中的编码是GBK/GB2312等,因此,导致这些zip文件在Linux下解压时出现乱码问题,因为Linux下的默认编码是UTF8。
目前网上流传一种unzip -O cp936的方法,但一些unzip是没有-O这个选项的。
我使用的版本 unzip 6.0 debian modified 版本有这个选项
我发现另外两种解决方案可用。
python方案此方案目前来看非常完美。
#!/usr/bin/env python# -*- coding: utf-8 -*-import osimport sysimport zipfile#print "Processing File " + sys.argv[1]file=zipfile.ZipFile(sys.argv[1],"r");for name in file.namelist(): utf8name=name.decode('gbk')# print "Extracting " + utf8name pathname = os.path.dirname(utf8name) if not os.path.exists(pathname) and pathname!= "": os.makedirs(pathname) data = file.read(name) if not os.path.exists(utf8name): fo = open(utf8name, "w") fo.write(data) fo.closefile.close()
Windows 用户屏蔽两条 print 语句,Linux 用户不用屏蔽
7z方案
需要安装p7zip和convmv,在Fedora下的命令是
su -c 'yum install p7zip convmv'
在ubuntu下的安装命令是
sudo apt-get install p7zip convmv
安装完之后,就可以用7za和convmv两个命令完成解压缩任务。
LANG=C 7za x your-zip-file.zipconvmv -f GBK -t utf8 --notest -r .
第一条命令用于解压缩,而LANG=C表示以US-ASCII这样的编码输出文件名,如果没有这个语言设置,它同样会输出乱码,只不过是UTF8格式的乱码(convmv会忽略这样的乱码)。
第二条命令是将GBK编码的文件名转化为UTF8编码,-r表示递归访问目录,即对当前目录中所有文件进行转换。
阅读全文
0 0
- ubuntu 16.04L解压zip文件出现乱码
- ubuntu 14.04解压zip文件出现乱码
- ubuntu 14.04解压zip文件出现乱码
- ubuntu下解压zip文件出现文件名乱码
- Linux解压zip文件出现中文乱码
- ubuntu解压zip文件乱码问题
- ubuntu解压zip文件中文乱码问题
- ubuntu解压zip文件乱码问题
- ubuntu解压zip文件乱码问题
- ubuntu下解压中文zip文件乱码
- ubuntu解压zip文件乱码问题
- ubuntu解压zip文件乱码问题
- ubuntu解压zip文件乱码问题解决方法
- ubuntu解压zip乱码
- Ubuntu zip解压乱码
- ubuntu 解决zip解压出现中文乱码问题
- 在Linux下解压zip文件出现文件乱码
- 解决Ubuntu解压RAR文件出现乱码
- ORANGE’S:一个操作系统的实现:Windows和Ubuntu分别安装bochs-hello world
- 设计模式---适配器模式
- java IO的比较
- python用matplotlib画图例子(3)
- Ubuntu安装Samba服务
- ubuntu 16.04L解压zip文件出现乱码
- (1) 服务治理Eureka注册中心
- DAGScheduler原理剖析与源码分析
- h5点播播放mp4视频遇到的坑,ios的h5不能播放视频等
- 2.4 Linux进程
- GUI与GUILayout的区别
- NGUI写卡牌拖放效果
- Java的常量池
- 从零开始系列之spark与mongodb连接的安装记录_java方向(2)