转自解决ubuntu中zip解压的中文乱码问题php
在个人ubuntu12.10中,发现显示中文基本都是正常的,只有在解压
windows传过来的zip文件时,才会出现乱码。因此,我用另外一个方法解决中文乱码问题。
用到的工具是The Unarchiver项目提供的lsar/unar工具。
安装(12.04及以上):
代码:
sudo apt-get install unar
12.04如下或者想编译安装的朋友请参考:
viewtopic.php?f=35&t=353426
使用:
假设须要解压的ZIP包是foo.zip
代码:
lsar foo.zip #列出全部文件
若是列出的文件名已经正确
代码:
unar foo.zip #解压全部文件
若是列出的文件名还不正确
代码:
lsar -e GB18030 foo.zip #指定使用GB18030编码列出全部文件
unar -e GB18030 foo.zip #指定使用GB18030解压全部文件
注:GB18030编码文件名的ZIP文件通常由简体中文版Windows产生,对于繁体中文版Windows产生的ZIP文件能够尝试BIG5-HKSCS编码,对其余语种的常见编码再也不赘述。通用的原则是用lsar测试出正确的编码之后,用unar解压。