在Linux系统下利用iconv命令进行GBK与UTF-8字符编码间的转换

GBK编码和UTF-8编码的区别:

1.GBK的文字编码是双字节来表示的,即不论中、英文字符均使用双字节来表示,只不过为区分中文,将其两个字节的最高位都定成1。
   UTF-8编码则是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24位(三个字节)来编码。英文字符较多的内容使用UTF-8进行编码可以节省空间。

2.GBK包含全部中文字符,UTF-8则包含全世界所有国家需要用到的字符。

iconv命令用于转换指定文件的编码,默认输出到标准输出设备,亦可指定输出文件。

在转换的时候是根据当前系统提供的字符编码进行转换,首先要保证系统具有需要转换的编码,这样才能正确实现转换的过程。

用法: iconv [选项...] [文件...]

有如下选项可用:

输入/输出格式规范:

-f, –from-code=名称 原始文本编码

-t, –to-code=名称 输出编码

列举出当前系统所包含的字符集信息:

-l, –list 列举所有已知的字符集

输出控制:

-c 从输出中忽略无效的字符

-o, –output=FILE 输出文件

-s, –silent 关闭警告

–verbose 打印进度信息

-?, –help 给出该系统求助列表

–usage 给出简要的用法信息

-V, –version 打印程序版本号

使用例子:

iconv -f gbk18030 -t utf-8  gbk_file > utf_file

这个命令读取gbk_file文件,对照系统中提供的字符集,将gbk18030编码转换为utf-8编码,其输出定向到utf_file文件。

http://blog.163.com/qj_l12@126/blog/static/35930826200946105829314/

Published in Linux
Tags:

One Response to “linux使用iconv在不同字符编码中转换(转)”

  1. 七月 23rd, 2010 at 3:37 上午 #问道推广员

    有意思。

Leave a Reply

请输入算式结果(看不清请点击图片)
(必须)