由于zip格式中并没有指定编码格式,Windows下生成的zip文件中的编码是GBK/GB2312等,导致这些zip文件在Linux下解压时出现乱码问题,因为Linux下的默认编码是UTF8。
方法一:加上参数即可解决,如下:unzip -O cp936 中文压缩包.zip
方法二:在windows平台安装winrar,添加系统环境变量,用winrar命令解压。
winrar x “c:\test.zip” "d:\test\"
x 解压缩保留路径
e 解压缩忽略路径
忽略路径的意思,就是解压缩时,压缩包原来里面有文件夹的,
解压缩之后,只能得到所有文件,而文件夹没了。
以上命令可以通过java或python去调用实现功能。
原文:https://blog.51cto.com/ning235/2507825