1、如果需要在
linux
中操作windows
下的檔案,那麼可能會經常遇到檔案編碼轉換的問題。
windows
中預設的檔案格式是
gbk(gb2312)
,而linux
一般都是
utf-8
。 2、在
vim中可以檢視檔案編碼
:set fileencoding
解決用vim檢視檔案亂碼的問題,在
~/.vimrc中新增以下內容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
3、檔案編碼轉換
1)在vim中直接進行轉換檔案編碼
,如將乙個檔案轉換成
utf-8
格式 :set fileencoding=utf-8
2)enconv
轉換檔案編碼,如要將乙個
gbk編碼的檔案轉換成
utf-8
編碼: enconv -l zh_cn -x utf-8 filename
3)iconv
轉換,iconv
的命令格式如下:
iconv -f encoding -t encoding inputfile
如將乙個
utf-8
編碼的檔案轉換成
gbk編碼
iconv -f utf-8 -t gbk file1 -o file2
4、iconv
選項 ①
-c 從輸出中忽略無效的字元
② -o, --output=file 輸出檔案
③ -f, --from-code=名稱 原始文字編碼
④ -t, --to-code=名稱 輸出編碼
⑤ -l, --list 列舉所有已知的字符集
⑥ --usage 給出簡要的用法資訊
5、批量轉換
[4] 假設當前目錄下有
foo1.txt foo2.txt .... foon.txt
都是gb2312
內碼,將他們全部專程
big5
內碼,並在後面加上
big5
作為字尾。建立乙個指令碼
gb2312_2_big5.sh
,內容如下:
ls *.txt |while read i
do iconv -f gb2312 -t big5 $i>$i.big5
done
儲存之後執行
sh gb2312_2_big5.sh
參考【1】
linux
檢視檔案編碼格式及檔案編碼轉換
【2】 本文講述的是
iconv的c
語言庫版本,非常值得一讀
【3】 對選項進行了詳細的介紹
【4】 批量轉換
iconv 的使用方法
iconv 編碼轉換 用法 iconv 選項.檔案.有如下選項可用 輸入 輸出格式規範 f,from code 原始文字編碼 t,to code 輸出編碼 資訊 l,list 列舉所有已知的字符集 輸出控制 c 從輸出中忽略無效的字元 o,output file 輸出檔案 s,silent 關閉警告...
Linux使用iconv進行編碼轉換
最近在做專案,為了能讓ui顯示中文,需要對中文進行編碼轉換。因為我用的是directfb,它只支援utf 8格式,所以要將gb2312轉換為utf 8,這時使用iconv是非常方便的。以下是我在專案中用到的一部分 首先要使用iconv的api需要包含它的標頭檔案 include iconv.h 或者...
php中iconv函式使用方法
iconv convert string to requested character encoding php 4 4.0.5,php 5 mb convert encoding convert character encoding php 4 4.0.6,php 5 用法 string mb c...