快轉到主要內容

如何在Linux解壓縮日文亂碼的.zip檔案,解決SHIFT-JIS、GBK、Big5亂碼問題

· 民國115年丙午年
·
切換正體/简体 ·
分類 Linux系統 Linux使用技巧
標籤 Linux Windows
目錄

解決Ubunu等Linux發行版解壓縮檔案出現亂碼的問題。

在中文Linux環境解壓縮檔案,有時會遇到使用Windows區域字元編碼,譬如Big5、GBK、SHIFT-JIS,致使解出來是亂碼的情況。若是程式,可能還會無法正常執行呢。

譬如,從DLsite下載的壓縮檔,很多都有日文編碼亂碼問題。

似乎很多本本繪師都是在日文Windows作業然後輸出上傳,直接繼承了SHIFT-JIS編碼,於是在中文Windows解壓縮就會出現亂碼。更別說Linux了。

一般來說壓縮檔案應該用UTF-8才有跨平臺相容性。可是Windows 11直到今天仍然預設使用預設區域的Code Page編碼,譬如繁體中文就會用Big5編碼,令人頭痛。反之,在Linux壓縮檔案的話,程式通常會自動選取UTF-8編碼。

我看只有像《愛上火車》這種有製作多國語言特典大禮包(花500日元就送你遊戲 + 10部影片 + 抱枕CG圖 + ASMR音聲)的開發者才會懂得特別用UTF-8壓縮檔案吧!

Linux並沒有Locale Emulator,要用其他方式處理。

其實只要告訴解壓縮軟體,用特定區域編碼去解壓縮檔案就可以了!

GUI方面的軟體,PeaZip無法解,KDE Ark也不行。可見,除了WinRAR(需要透過Wine執行)之外,Linux沒有一個GUI軟體能解壓縮需要切換編碼的檔案。

那麼有以下解方:

7-Zip
#

跨平臺的解壓縮軟體,Linux沒有官方的GUI。安裝指令:

sudo apt install p7zip-full

在下載目錄打開終端機,使用日文編碼解壓縮:

7z x -mcp=932 "壓縮檔.zip"

WinRAR
#

授權:專有軟體

  1. 透過Wine安裝WinRAR

  2. 打開檔案 → 選項 → 切換編碼,選取日文(SHIFT-JIS),再解壓縮。

unar
#

macOS移植來的工具unar (The Unarchiver)

安裝

sudo apt install unar

在下載目錄打開終端機,用-e指定日文編碼,或者不加,讓它自動偵測檔案編碼:

unar -e shift_jis "壓縮檔.zip"

unzip
#

大多數Linu發行版都有內建的unzip指令,沒有就安裝:

sudo apt install unzip

在下載目錄打開終端機,解壓縮,它可以用-O指定日文編碼:

unzip -O shift-jis "壓縮檔.zip"

不過用的時候我發現:はあ!?居然要Arch Linux和Ubuntu 26.04的unzip才有支援日文的patch,Debian 13收的不行。

參考
#

相關文章


感謝您的閱讀。我寫作是為了誠實表達想法,而不是追逐社群互動與流量。我很樂意傾聽你在仔細閱讀我文章之後的心得。若有內容勘誤 or 技術問題 or 回饋想法,歡迎透過本站「關於」頁面的Email與我聯絡。