zhyiwww
用平实的笔,记录编程路上的点点滴滴………
posts - 536,comments - 394,trackbacks - 0
如果你有一个utf-8编码的文件,但是你想要一个其他编码的文件,比如GB2312,GBK,GB18030等等,如何转换呢?
通常的方法有一下两种:

[1]用文本编辑器,打开文件,再选择编码另存,就可以了

 你可以用ultraedit,可以用textpad,可以用gedit,等等编辑工具

[2]用iconv工具

在linux下面,可以用
iconv工具来实现
比如我的文件
sample500.txt的编码是UTF-8
内容如下:

address
北京市东城区三眼井胡同乙68号
北京市东城区东中街22号
北京市东城区东中街29号东环广场B1层
北京市东城区东中街46号同厂子胡同46号
北京市东城区东交民巷
北京市东城区东交民巷1号
北京市东城区东交民巷2号北京新侨诺富特饭店
北京市东城区东内大街201号

转码 UTF-8 -> GB2312

$ head -10 sample500.txt | iconv -f UTF-8 -t GB2312  > sample.gb2312.txt

之后的文件内容是:

address
�����ж��������۾���ͬ��68�
�����ж��������н�22�
�����ж��������н�29�Ŷ����㳡B1�
�����ж��������н�46��ͬ���Ӻ�ͬ46�
����������������
�����������������1�
�����ж�������������2�ű�������ŵ���ط��
�����ж��������ڴ���201�
�����ж����������Ű�����ͬ23�

我的系统是乱码,是因为我的系统没有添加GB2312支持。

同样的道理,你也可以用这种方法来实现从一种编码到另一种编码的自由转换。

-f 是源文件的编码
-t是目标编码

详细的内容你可以参考iconv的帮助

注:我用的是debian 5.0 系统。



|----------------------------------------------------------------------------------------|
                           版权声明  版权所有 @zhyiwww
            引用请注明来源 http://www.blogjava.net/zhyiwww   
|----------------------------------------------------------------------------------------|
posted on 2009-06-19 17:40 zhyiwww 阅读(1323) 评论(0)  编辑  收藏 所属分类: j2eedebian