archlinux 解压zip乱码 已解决

在archlinux下用zip解压文件一直是我很头疼的一个问题。

每次收到同学们发来的或者是网上下载的从windows压缩的zip文件,我打开都是乱码,一直都没有很好的解决办法。

原因大家都知道:在windows下压缩文件时,是以系统的默认编码(gbk,gb18030)来压缩,zip文件并没有声明编码的格式,因此,linux下解压缩时,也会使用系统默认的格式(utf-8)解压缩,编码格式不同,所以会出现乱码。

即使查资料也都是说的不靠谱,什么unzip -O之类的,可是好像-O选项的版本早就没了还是怎么的,反正是不能用,而且哪些所谓的解决办法都是互相抄来抄去的解决方法,其实那些博主估计根本就没有亲身。今天终于忍不住了,狠下心查了一下午,试了各种办法,什么7z啊之类的全都用了,最后终于决定要放弃了。就在这时,我的努力也许打动了我自己,于是奇迹出现了,上命令——

unzip xxx.zip

先用这条命令将xxx.zip解压,假设解压出来的文件是xxx。

convmv -f gbk -t utf8 --notest xxx

这条命令是让文件xxx从gbk编码转换成utf8编码,如果不加--notest的话只是预览而不是真正的转换。

亲身实践,绝对真实、好用。(当下立即用脚本解压并转码了30多个zip包,不过有4个是失败的,转码未成功。失败原因是这几个zip包解压出来的文件本身就已经时utf8编码,所以不能再转换成utf8编码了。)不过总体来说,成功率还是很靠谱的!

时间: 2024-12-18 06:42:11

archlinux 解压zip乱码 已解决的相关文章

Ubuntu中解决解压zip文件中文乱码问题

1. 通过unzip行命令解压,指定字符集 unzip -O CP936 xxx.zip (用GBK, GB18030也可以) 有趣的是unzip的manual中并无这个选项的说明, unzip --help对这个参数有一行简单的说明. 2. 在环境变量中,指定unzip参数,总是以指定的字符集显示和解压文件 /etc/environment中加入2行 UNZIP="-O CP936" ZIPINFO="-O CP936"Ubuntu中解决解压zip文件中文乱码问题

解决ubuntu解压zip文件名乱码的问题

1. 安装7-zip 和 convmv : 命令: sudo apt-get install convmv p7zip-full 2. 解压zip文件: 命令:LANG=C 7z e yourZIPfilename 3. 开始转换编码 命令: convmv -f gbk -t utf8 -r --notest *

编程解决Linux下解压zip乱码问题

JDK7 的ZipInputStream新添了一个构造方法,第二个参数可以指定字符集.这样一来我们就能用这个类写一个解压程序解决zip乱码问题了. 下面是代码: package cn.fh; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.nio.charset.Charset; import

ubuntu解压zip文件乱码问题

我的zip文件里的内容是有中文名,也有密码,在网上找到几种解决办法只有一种可以,所以在这里记录一下: 首先是安装7zip来解压,7zip的解决办法在这里,但是无法解决我的问题,仍然有乱码问题 最后是在这里找到解决办法的. 过程如下: 1.lsar test.zip 列出了所有文件(lsar - list archive file contents),列出的文件名是正确的,则可以进行下一步了 2.unar -p my_password test.zip 则可以根据密码解压自己的文件了(unar -

linux ubuntu12.04 解压中文zip文件,解压之后乱码

在windows下压缩后的zip包,在ubuntu下解压后显示为乱码问题 1.zip文件解压之后文件名乱码: 第一步 首先安装7zip和convmv(如果之前没有安装的话) 在命令行执行安装命令如下: sudo apt-get install p7zip-full convmv 第二步 假设zip文件名为y05文档.zip,那么先进入zip文件所在的目录,然后命令行执行 LANG=C 7z x y05文档.zip convmv -f cp936 -t utf8 -r --notest * 2.文

linux下zip文件解压后乱码解决方案

解决办法一,利用pyton来处理 1.vi uzip文件2.复制一下内容(Python) #!/usr/bin/env python # -*- coding: utf-8 -*- # uzip.py import os import sys import zipfile print "Processing File " + sys.argv[1] file=zipfile.ZipFile(sys.argv[1],"r"); for name in file.nam

ubuntu解压zip文件中文乱码问题

通过unzip行命令解压,指定字符集 unzip -O CP936 xxx.zip 注:xxx.zip为需要解压的文件名 ubuntu解压zip文件中文乱码问题

java 解压 zip 包并删除

需求是这样的,  在服务器上有 运营上传的zip 包,内容是用户的照片,我需要做的是 获取这些照片上传,并保存到 数据库. 这里面的 上传照片,保存数据库都不难,主要问题是解压zip包,和删除zip 包,以及 解压后的文件. 之前在网上找的解压的文件的代码,都存在同一个问题,就是解压之后,无法删除 zip 包.查百度说是 资源占用,可是我已经把所有的流都关闭了哇. 我把解压和删除分成两部分用 jUnit  测试:   第一次测试解压,并不删除包:第二次只删除包.我发现,解压方法和删除方法在同一个

PHP扩展类ZipArchive实现压缩解压Zip文件和文件打包下载

PHP扩展类ZipArchive实现压缩解压Zip文件和文件打包下载 http://my.oschina.net/junn/blog/104464 PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有疑问欢迎交流.这里整理一下常用的示例供参考. 一.解压缩zip文件 ? 1 2 3 4 5 6 7 8 9 10 11 $zip = new ZipAr