您的位置:首页 > 运维架构 > Linux

linux下zip文件解压乱码的问题

2017-07-04 15:02 561 查看
因为编码问题,zip文件中的中文文件在linux下解压会出现乱码

如果你使用archlinux那么使用AUR安装unzip-natspec就可以解决这个问题
https://aur.archlinux.org/packages/unzip-natspec/
这个时候,使用unzip xxx.zip就可以正确解压文件

然后在file-roller归档管理器中操作,中文名称依然是乱码,据说是因为file-roller优先使用p7zip

删除p7zip后问题解决

然而我还想同时能够使用p7zip软件包,谁知道这个问题如何解决?

从这里https://git.gnome.org//browse/file-roller/下载代码研究,发现这样的逻辑

/* give priority to 7z, unzip and zip that supports ZIP files better. */
if ((strcmp (mime_type, "application/zip") == 0)
|| (strcmp (mime_type, "application/x-cbz") == 0))
{
if (_g_program_is_available ("7z", check_command)) {
return capabilities;
}
if (!_g_program_is_available ("unzip", check_command)) {
capabilities |= FR_ARCHIVE_CAN_READ;
}
if (!_g_program_is_available ("zip", check_command)) {
capabilities |= FR_ARCHIVE_CAN_WRITE;
}
return capabilities;
}


这里是写死的,看起来除了给代码打补丁是没什么好办法了

最后的解决办法,发现AUR中同样存在类似的软件包p7zip-natspec
https://aur.archlinux.org/packages/p7zip-natspec/
安装这个包应该就可以完美的解决问题吧,因为我已经使用上面的方法解决了问题,就不试这个了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: