UTF-8 这种编码已经是大势所趋,但是还有不少中文的文档保留着老式的 GB2312编码,而且只要你要和 Windows 打交道,就免不了要处理 GB2312 的问题,比如处理从 Windows 下拷过来的程序源代码、文本文件、字母文件之类。

 

编码转换的方法估计大多数同学都知道了,不过还是有必要再强调一下,我就是老忘。

 

Linux 下的 iconv 命令可以来处理字符编码的转换,基本命令格式如下:

 

iconv -f 原始编码 -t 目标编码 文件名 > 新文件名

-f 代表 from,-t 代表 to。

 

假设我要把 text.txt 从 GB2312 编码转换成 UTF-8,并且保存为 text-utf-8.txt 的话,那么命令如下:

 

iconv -f GB2312 -t utf-8 text.txt > text-utf-8.txt

 

不过有的时候,转换会报错,很可能的原因是原文件中有些字符超过了 GB2312 的范围,那么,这个时候,我们可以把 GB2312 改成它的超集 GB18030,一般就解决问题了:

 

iconv -f gb18030 -t utf-8 text.txt > text-utf-8.txt

(责任编辑:A6)

本站文章仅代表作者观点,本站仅传递信息,并不表示赞同或反对.转载本站点内容时请注明来自-Linux伊甸园。如不注明,将根据《互联网著作权行政保护办法》追究其相应法律责任。

--------------------next---------------------