zip压缩包解压后的文件名是乱码的解决

zip压缩包解压后的文件名是乱码的解决

Posted by Gavin on September 7, 2023

前言

笔者为了平时的安装一些软件或者开发调试的方便将使用的windows的默认编码格式设置为了utf-8之后,出现了意想不到的问题,别人发给我的压缩包解压后出现了乱码的问题,具体如下:

文件打开能正常的显示,但是就是文件名看不出来到底是什么东西

解决方法

修改windows系统的编码格式为GBK

这里违背了我的初衷了,所以不采用这种方式,有兴趣的同学可以自行的尝试下

添加解压时编码的参数即可

7-zip为例,只需要在命令行中使用命令解压,添加-mcp=936参数即可,936代表GBK,-mcp 即method code page,x代表eXtract.

"C:\Program Files\7-Zip\7z.exe" x "[我的压缩包.zip](https://link.zhihu.com/?target=http%3A//xn--uirzlx58ak2tg2j.zip/)" -mcp=936

也可以将7z的安装目录设置到系统环境变量中,这样就可以直接的使用7z的命令了,具体如下: 下面的是我的7z的安装的目录

C:\Program Files\7-Zip

可以使用如下的命令进行解压了

& 'C:\Program Files\7-Zip\7z.exe' x '.\2_项目实际问题扩展(1).zip' -mcp=936
# 设置我环境变量重启系统之后就可以直接使用下面的代码来执行对应的解压的操作了
7z.exe x '.\xxx文件.zip' -mcp=936