出處:https://www.jianshu.com/p/f55ddf1e9839
經常會在Mac上打開一個txt文件,發現里面的中文都是亂碼,問題是在Windows和手機上看都完全是正常的,這就十分鬧心了。網上千奇百怪的解決方案大多不能用,試錯后發現一個解決方案。需要用到命令行工具iconv,語法是這樣的:
iconv -f encoding -t encoding sourcefile > destinationfile
比如一個典型的例子(也是大多數情況):
iconv -f GB18030 -t utf-8 A.txt > B.txt
原文中是GB18030 > UTF8,不知為何會報錯,改為utf-8后好用。假如是其他編碼,比如繁體編碼BIG-5,也都可以實現,可以用iconv自己打印一個支持轉換的list看看。
看看效果:
完全解決了我們的問題。又有了新的疑惑,why GB18030 > UTF8 ?
補充資料:
兼容性
- GB2312:基本滿足了漢字的計算機處理需要,對於人名、古漢語等方面出現的罕用字,GB 2312不能處理。
- GBK:GBK 向下與 GB 2312 編碼兼容,向上支持 ISO 10646.1國際標准。
- GB18030 :對GB 2312-1980完全向后兼容,與GBK基本向后兼容,並支持Unicode(GB 13000)的所有碼位。
發布時間
- GB2312:由中國國家標准總局1980年發布,1981年5月1日開始實施。
- GBK:1995年12月1日制訂。
- GB18030 :初版於2000年3月17日發布,現行版本於2005年11月8日發布,2006年5月1日實施。