用Linux的人都知道,Windows上開發的代碼的中文或日語注釋拿到Linux下會出現亂碼。
特別是在需要看這些代碼的時候。全是亂碼,讓人有種想吐的沖動。還好,不難解決。我發現有三種方法解決如上問題。下面我就分享給大家。系統環境Ubuntu 11.10-32bit。
1,最手工的方法。就是把這些代碼拿到Windows上,然後將代碼文件另存為新的文件。注意將編碼格式選擇為UTF-8。將所有轉換後的格式的文件拷貝到Linux。這種方法是初學者的最愛。
2,IDE。如果你用的是代碼編輯器,可以在設置編碼格式的時候試試ms932。可以試試。
3,第三種方法是我自己寫的一個Linux bash腳本。將需要轉換的文件全部轉換為UTF-8。
#!/bin/sh
#This script is used to convert windows shift-jis to utf8
for var in $* ;do
#Shift_JIS和Windows-31J為日語的兩種的編碼格式。中文亂碼,紅字可以替換為GBK
echo "converting $var"
/usr/bin/iconv -f Windows-31J -t UTF-8 "$var" > "$var."
rm -rf $var
mv "$var." "$var"
done
echo "convert success."
使用方法;首先安裝iconv。
jiang_dlut$sudo apt-get install iconv
將上述腳本拷貝到需要轉換的目錄。打開終端。
(1)將目錄下的所有文件轉換,則輸入如下的命令
jiang_dlut$ ./sh *
(2)將目錄下的所有.c文件轉換,則輸入如下的命令
jiang_dlut$ ./sh *.c