iconv转换文件出错操作

编程知识 更新时间:2023-05-02 21:17:43

iconv转换文件出错操作

 

 

今天在Linux 下使用 Iconv 命令转换一个UTF8文件时,总是转换不成功
iconv -f utf8 -t gb2312 aaa.txt > bbb.txt。
提示:

iconv: illegal input sequence at position 15

后来使用 man iconv 查看,还是没发现异常,因为命令格式都是正确的。后来找了许多资料才知道原因,如下:

a. 在做编码转换的时候,如果你的源格式设定为 GB2312 的话,而且在转换成 UTF-8 的时候,发现程序会报“illegal input sequence at position xxxx”的错误。这是由于你之前的做的假定有问题。GB2312 是国标里面一个最小也是最早的中文编码标准。其中,只涵盖了 6,763 个汉字。所以你需要转换的文件的原始的格式可能并不是 GB2312 编码。这个时候,你可以用 GB18030 做为源格式来进行转换。GB18030 是最新的国家标准,包含了 27,564 个汉字,而且向下兼容 GB2312 和 GBK。

b.另外,支持 Unicode 且 Free 的中文字库我推荐使用”文泉驿“。这好像也是目前为止,唯一的一个以支持 Unicode 为出发点的 Free 的中文字库。

后来我直接输入:iconv -f utf8 -t gb18030 aaa.txt > bbb.txt   就OK了。

 

还有一个enconv的程序可以用来猜测编码

 

vim看文本的话就简单多了

set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,iso-8859-1,gbk
set encoding=utf-8

更多推荐

iconv转换文件出错操作

本文发布于:2023-04-28 17:24:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/8998a07b9d555fcdb9cea331e3c10e33.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:操作   文件   iconv

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 109310文章数
  • 27732阅读数
  • 0评论数