作者:crane-yuan 日期:2017-05-02
问题
由于zip格式中并没有指定编码格式,Windows下生成的zip文件中的编码是GBK/GB2312等,因此,导致这些zip文件在Linux下解压时出现乱码问题,因为Linux下的默认编码是UTF8。目前网上流传一种unzip -O cp936
的方法,但一些unzip是没有-O这个选项的。
解决方法
- 继续使用
unzip
工具
> unzip -O cp936 demo.zip
但是,有些发行版所带的 unzip 没有这个参数,比如 ArchLinux 就需要安装 unzip-iconv。
Ubuntu 12.04 里面的 unzip 是有这个参数的。
- 使用
7zip
工具
> 7z e {archive.zip} -o{path} #正常解压
> 7z x {archive.zip} -o{path} #全解压,压缩包中包含压缩包,也给解压了