File-Roller解压缩乱码问题的解决

在 Linux 使用系统自带的 File-Roller 文件归档器解压缩文件时有时会遇到中文文件名解压后乱码的问题,此时我们可以使用命令行工具unar执行unar yourfile.zip实现中文名文件的解压缩,但是对于正在进行图形工作的任务时,切换命令行会降低效率。因此,解决 File-Roller 的中文解压缩乱码问题是一个相当重要的问题。

乱码的原因

  • 编码不一致(主要原因):Windows (GBK)和 Linux (UTF-8)系统下默认的字符编码不同,导致在交叉使用时出现乱码。
  • 软件版本问题:某些软件版本对编码支持不全,也会导致乱码的出现。

旧版本 File-Roller 解决方案

  1. 打开 File-Roller, 选择 “工具” 菜单中的 “配置文件管理器” 。
  2. 在 “编码” 选项卡中,将 “自动检测” 设置为 “否”,并手动添加GB18030, GBK, GB2312等编码。
  3. 保存并关闭配置文件管理器。

新版本 File-Roller 解决方案

在 GNOME 48 环境下,File-Roller(归档管理器)的界面已更新,不再提供旧版的 工具 菜单和 配置文件管理器。但底层仍支持通过配置文件(fr-encodings.json)自定义编码列表。修改配置文件后, File-Roller 会优先使用列表中的编码尝试解压(等同于关闭自动检测)。

  1. 打开终端。
  2. 编辑 File-Roller 的配置文件:
    1
    2
    mkdir ~/.config/file-roller
    nvim ~/.config/file-roller/fr-encodings.json
  3. 将以下内容粘贴到文件中:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    {
    "encodings": [
    "GB18030",
    "GBK",
    "GB2312",
    "UTF-8",
    "CURRENT"
    ]
    }
    • GB18030,BGK,BG2312是手动添加的中文编码。
    • UTF-8, CURRENT是保留的默认编码。
  4. 重启 File-Roller 即可生效。

解压时手动选择编码

  1. 双击打开压缩文件。
  2. 点击右上解的⋮(菜单)使用其他编码打开...
  3. 从列表中选择GB18030,BGKGB2312