WinRAR 處理檔名亂碼的問題
許多壓縮軟體都不能好好處理一些文字,跨國的壓縮檔不是檔名亂七八糟就是裡面的檔案有亂碼,解壓縮老是有問題。追根究柢,其實都是編碼在作祟。WinRAR 也不例外,作為一個外國軟體,支援中文的程度算是很好的了。只不過,還是不一定能在中文的視窗裡面解出日文的檔案。
首先,讓我們簡單的了解一下編碼。英文 ABC 加上常用符號,在西方人的眼光中是蠻節省的文字,一個字母編一個碼 (就是所謂的「半形」),了不起 128 個位置給文字用就好了。再加上歐語系的字母,A 上面加個撇、I 上面加兩點等等,255 個位置也足夠,還能剩下來的空間放些鬼畫符什麼的。遇到中文字就不得了,中華文化博大精深,常用的就有好幾千個,像樣的字表也到好幾萬字,一個中文字要占兩個位置 (就是所謂的「全形」),文字的編碼空間還是略顯吃緊。那時候各個國家各自為政,自己編自己的碼,結果正體中文 (Big5)、簡體中文 (GB)、日文 (EUC/Shift-JIS) 自己倒是輕鬆愉快,但是萬一遇到文件交換時問題就來了,同樣的編碼,在不同語言代表不同的文字,彼此看到的就是亂碼,更糟糕的是要是遇到對方編的是自己編的控制碼,程式還會當掉。
後來大家一起想個辦法,彼此協調,重新編碼,大家有個共識,一個碼就是一種字,這樣文件交換的時候就不會打架了。萬一要是顯示不出來就是字型沒提供足夠,不會造成文件本身的問題。這就是所謂的萬國碼 (Unicode)。
回到 WinRAR 遇到壓縮檔或檔案有亂碼的問題。雖然從 Windows XP 的時代起大家開始推行 Unicode,歷史共業依然存在,也就是說仍然有許多不是使用萬國碼的文件在流通,仍然有不會產生萬國碼的程式繼續使用舊標準產生新文件。舉個例子,最近網友問道,有個日文的 ZIP 檔
怎麼用 WinRAR 開啟都是亂碼呢?
還沒有辦法解壓縮!
這就是典型的非 Unicode 的問題,以前文字交換的苦惱今天依然存在。一般來說,這個檔案是在日文的環境下產生的,而且沒有使用 Unicode 編碼,所以檔案名稱是日文編碼,壓縮檔名也是日文編碼,顯而易見的在中文的視窗中看到的是亂碼,更別想進一步解壓縮。
要解壓縮也不是無解。把系統暫時設定成「日文的體質」([控制台] > [地區及語言選項] > [系統管理],將 [非 Unicode 程式的語言] 從中文改成日文),這樣就可以順利解開日文壓縮檔了。記得完成後要設回來啊!
當然啦,也有更簡便的辦法,就是在 WinRAR 裡面直接對圖片檔點兩下就可以開了。要解壓縮出來,也可以先利用 WinRAR 把亂碼檔案重新命名,就能取出檔案。
既然從 Windows XP 開始就比較成熟的支援 Unicode,只要搭配也支援 Unicode 的壓縮軟體,例如日本人使用 Windows 內建的壓縮程式,或者較新版的 WinRAR,就能產生你也看得懂也解得出的日文壓縮檔。
不過,WinRAR 目前也是有歷史的包袱。在 WinRAR 的程式庫中,為了與 Windows 98 相容,仍保留不支援 Unicode 的功能,
所以有些地方不會正確顯示外國文字,但功能還是正常的。
雖然不一定在滑鼠右鍵的快捷選單正確顯示文字,
但也能正確的把日文解出來。
這就是作者之前想表達的意思。也就是說,前提是處理 Unicode 編碼的外國文字是沒問題的,要是遇到非 Unicode 的檔名,那還是回到古代的問題,也就是不相容。
WinRAR 作者有跟我承諾下次大改版的時候,會把許多程式庫重寫,包括徹底採用 Unicode,這樣上面的顯示不完全的問題就能解決了。
至於要是遇到所謂非 Unicode 編碼的壓縮檔,就一定要大費周章的改系統成日文的體質、重開機、解壓縮、改回中文的體質、重開機,這麼麻煩嗎?那也未必。安裝 Unicode 補完計畫能暫時解決這個問題,Unicode 補完計畫點出了其實正體中文的作業系統相容性還可以更好,只是微軟有很多顧慮不做罷了。這因為要修改到作業系統,有點太技術導向,這裡就不進一步討論。
回應
稱呼: 性別:
內容:
是否能請教一下是哪個版本呢?
以前的情況是這樣的:
1.在壓縮檔(未解開時)方面,日文字的呈現仍然是正常的。
2.在解壓縮後(解壓縮到...跟壓縮檔檔名相同的資料夾),日文字的呈現是___這種底線的形式,但是能正常解壓縮。
3.在雙擊打開檔後,似乎是呈現"?"的。(記不太清楚到底是底線還是問號了...)
現在重灌後,RAR為3.3的正式版,
但是一遇到日文檔名,竟然無法解壓縮(無法使用右鍵的任何解壓縮方式,但能雙擊點開),
且說是[WinRAR發生錯誤,必須關閉。...]
若是想找回以前的那種版本,是否能請問一下是哪一版呢?
謝謝><
一抹淺藍回覆:哇!3.3 版是 2004 年的產品了啊!要不要換最新版試試看呢?雖然日文顯示不是很完美,起碼解壓縮的問題比較少。
我的事WIN7
Unicode 補完計畫只是愈補愈大洞。
一抹淺藍回覆:Unicode 補完計畫真是個有爭議的東西啊!擁護的族群永遠讚賞這方便的設計,不但把沒用的字碼對應表空間給填上,還不必裝些有的沒的補綴工具,在非 Unicode 的世界裡相容性起碼不會比簡體中文、日文差。可是沉醉在自己的世界裡雖然好,一旦製造出來的文件要分享給沒有裝 Unicode 補完計畫的人,就換別人感受那種不相容的不方便。
我也曾覺得正體中文 Big5 與 Unicode 的碼位對應表實在很浪費,明明有機會給使用者更方便卻不去做,而剛好 Unicode 補完計畫就能補這個漏洞,當時曾十分激賞。我也曾想把中推會訂定的標準更延伸應用在新版的 Windows 補齊,起碼大廠都開頭做,大家會跟進,這樣正體中文的世界會更好。只可惜大廠有太多顧慮,例如對以前的相容性無法向後彌補就是一例,在種種的考量之下,只好維持一樣的標準,另外把推廣的重心放在 Unicode 上。
香港也出現過類似的問題。HKSCS-2004 統一運用 Big5 的使用者造字區,讓粵語特殊字有個出口。結果在多年後對應 Unicode 出現問題,變成對應到 Ext-B 的字元讓現有的系統看不懂,香港政府也只好規定政府相關文件仍繼續使用舊標準,而香港版的 Windows 也特別為香港推出香港細明體,補了這個漏洞,卻補不了另一個,也就是在這個做法之下,台灣的使用者看不到某些香港字。
所以有一好沒兩好,摸蛤仔反而弄髒褲子。如果您希望跟其他人相容性好一點,請不要去碰 Unicode 補完計畫;如果一天到晚常常遇到日文或簡體字變成亂碼,也許 Unicode 補完計畫能減輕你的苦惱。







(還沒送出,所以沒有日期!)
娃娃 (2010/1/27 下午 11:32:00)
k356g (2009/12/26 下午 01:53:53)
台灣網路電台 (141)
悠遊卡手機 DIY (33)
哇塞! 戴老師帶動唱!! (12)
[watchtower] 天天動一動 , 助人又自助 愛
[一抹回覆] 是這樣的,原本登記不到 lightblue 的
咬文嚼字 (5)
藍制服的傳說
今天閱讀: 722, 總共閱讀: 370475