現在電腦世界因為資訊傳遞便利,接觸到其它國家的資訊愈來愈方便,各國電腦的發展在最早的時候沒考量到這點,造成亂碼的主因,通常是文字編碼不正確所造成的。
以語言來比喻,一個沒學過韓文的台灣人,他只會中文,他沒辦法用中文去理解韓文,所以看到韓文只會覺得看到一堆符號(亂碼)。
電腦也是一樣的,在發展的過程各國有各國自己發展的文字編碼。例如,台灣使用的是BIG5碼;大陸使用GB碼;日本使用JIS...等
一次只能使用一種來解碼,不能共存,所以後來才推出Unicode碼,解決多國語言共存的問題
本文主要探討的是編碼錯誤造成亂碼的解決方案,big5缺字和Unicode補完計畫的問題...等我想清楚了再來寫吧(逃)
網頁亂碼(含FLASH)
網頁亂碼通常是自動選擇編碼錯誤,IE的話按右鍵就能選擇編碼,Fx及Chrome則需開選單調整,但近年新的論壇和走國際化的網站都漸漸Unicode化了,所以這類問題應該只會愈來愈少
會出現錯誤的網頁通常選了下面的選項應該就能正確顯示了
台灣的網頁常用的編碼為BIG5、UTF-8
香港的網頁常用HK-SCS、UTF-8
大陸的網頁常用GBK、UTF-8
日本的網頁常用JIS、UTF-8
如果怎麼轉換都沒有用的話,那你可能要猜測網頁是不是壞掉或是被駭了
網頁上Flash亂碼...
有時網頁編碼對了,但Flash依然是亂碼...Flash sucks!
這時必需先把瀏覽器全部關掉,再使用piaip修改版的微軟Applocale或是NTLEA(全域通),將瀏覽器以成正確的編碼環境開啟才能解決
→piaip版Applocale下載、→教學連結
→NTLEA下載點、→教學連結@月光下的嘆息!
檔名亂碼
檔名亂碼比較常出現在解壓縮日文、簡中檔案,或是不支援unicode的續傳軟體抓中文檔名下來後,推薦使用ConvertZ轉換,選到預覽結果正確後,就能按轉換了!
怎麼轉都轉不回來的話...很有可能是某次有人轉換錯誤還給它按下確定...這種轉壞的我也不知道該怎麼救...
續傳軟體下載檔案亂碼
常見的續傳軟體FlashGet、Orbit、FreeDownloadManager至今仍不支援Unicode,遇到中文、日文檔名就會變成亂碼,甚至不能下載,而且使用Applocale似乎也無解...
改用瀏覽器內建的下載界面通常都不會有問題,其中Fx推薦使用DownThemAll來取代續傳軟體的作用
音樂標籤亂碼
使用ConvertZ轉換,但跟檔名一樣,有些轉錯的有可能會無法再轉回來,個人是建議直接連上freedb整套抓新的下來,應該會比較省事
網路上教學也很多,我就不再重覆寫了,個人最推薦下面這篇教學
→教學連結@DearHoney←
FTP亂碼
這問題比較麻煩...伺服器端和FTP下載軟體都必需支援Unicode才行,如果已經下載下來的亂碼檔案,參考上面的檔名亂碼來解吧
架FTP站推薦使用FileZillaServer、教學連結@就是教不落
下載FTP推薦使用FileZillClient、教學連結@海芋小站
註:伺服器不推薦ServU、zFTPServer、PCMan's FTP Server等等..因為它們都不支援Unicode
燒錄亂碼
這類問題最近應該很少了...除非你還在用舊版的Nero或是Alcohol(新版Nero支援Unicode了,而Alcohol至今都還支援不完全...)
一般推薦使用ImgBurn來取代Nero燒錄檔案
壓縮檔亂碼
一般來講,使用Applocale或NTLEA先將解壓縮程式切換成正確的編碼環境應該就能解決
注意:如果你是在有安裝UAO(Unicode補完計畫)的電腦,將含日文或簡中檔名的檔案壓縮成ZIP檔,那麼這個ZIP裡的檔案只能在有安裝UAO的電腦裡正確顯示!!
因為ZIP檔沒有強制使用Unicode當成壓縮檔名的編碼,壓縮時,當它判斷你的電腦可以正常顯示文字時,它就不會使用Unicode儲存。而7z及RAR檔很早就強制使用Unicode儲存檔名了,所以比較不會有亂碼問題。
遊戲亂碼
大多數情況使用Applocale或NTLEA就能解決,有少部份情況必需去控制台調整預設語系(Windows 2000以後適用)
影片字幕亂碼
雖然播放時可以調整,在字幕字型相關的選項可以選,不過因為不同軟體的調整位置都不太一樣...要一一列出還滿困難的,個人建議是使用ConvertZ全部轉換成Unicode,這樣就幾乎不會有問題
此外,簡體轉成繁體的話,要注意一些有指定簡體字型的字幕檔是否會受到影響
文字檔亂碼
文字檔其實跟字幕檔一樣都是文字檔,可以使用ConvertZ轉換
只是個人常用的做法是使用EmEditor(6版還是免費的),開啟後雙擊右下角的編碼,選擇Detect All讓它自動偵測,之後再另外新檔為UTF-8,這樣下次開啟就不會再變成亂碼了
雜談...
除了亂碼,由於BIG5缺字問題相當嚴重,使用支援Unicode的軟體才能免除很多檔案打不開的問題,比如說知名的秀圖軟體XnView不支援Unicode,在正常是無法開啟日文或簡中檔名的圖片,因為使用BIG5顯示不出日文和簡體中文...所以在台灣版的Windows下,XnView無法處理日文及簡體中文檔名
至今仍然有許多網站仍然使用BIG5編碼。例如,博客來、YAHOO拍賣、露天拍賣網站至今都還不支援Unicode,遇到日文、簡體中文就變成框框...我認為這不該是個走國際化網站該有的思維(連美國ebay都支援unicode...)
很多軟體、網頁都還沒支援Unicode的原因
- 程式要整個重寫,非常麻煩,而且轉換的過程萬一出問題會很難搞
- 對西方人而言,他們週遭用不到亞洲文字而較不重視這個問題
- 對中國人而言,他們用的GB碼、香港HK碼已有包含繁、簡、日文假名及漢字,比較缺字問題比較小,所以他們也較不重視
- 對日本人而言,他們用自已國人寫的軟體較多,自然也較不重視
- 對台灣人而言,很多程式人員不重視或不知道這是問題,讓亂碼問題層出不窮...囧
要減少這類亂碼問題,只能靠大家多多努力,多多使用Unicode編碼,尤其是撰寫程式和寫網頁的人,希望能注意到Unicode在國際化的重要性啊>_<
1 讀者回應:
推~!詳細介紹文
支持Unicode普及!
張貼留言