常常在Linux中操作windows下的文件時,會遇到亂碼的情形。常見的比如在Visual Studio 中寫的C\C++程序需要放到Linux主機上編譯,而程序的中文注釋則顯示為亂碼,比較嚴重的是由於編碼原因,linux上的編譯器報錯。 這是由於Windows中默認的文件格式是GBK(gb2312),而Linux一般都是UTF-8。那么如何在Linux中如何查看文件的編碼及如何進行對文件進行編碼轉換呢? 1、用VIM查看文件編碼 在Vim 中可以直接查看文件編碼 :set fileencoding 即可顯示文件編碼格式。 2、 改寫~/.vimrc 文件 如果你只是想查看其它編碼格式的文件或者想解決用Vim查看文件亂碼的問題,那么你可以在 ~/.vimrc 文件中添加以下內容: set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936 這樣,就可以讓vim自動識別文件編碼(可以自動識別UTF-8或者GBK編碼的文件),其實就是依照 fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼打開。 3、 用ICONV文件編碼轉換 我們利用iconv工具對文件的編碼進行轉換。 iconv 轉換,iconv的命令格式如下: iconv -f encoding -t encoding inputfile 比如將一個GBK 編碼的文件轉換成UTF-8編碼 iconv -f GBK -t UTF-8 file1 -o file2 其中的參數的意義表示 -f From 某個編碼 -t To 某個編碼 -o 輸出到文件 4、 通過記事本另存為來改變文件編碼; 既用windows下的記事本打開,選擇另存為……,改變編碼即可。