78、iconv简单使用

简介: 1、如果需要在Linux中操作windows下的文件,那么可能会经常遇到文件编码转换的问题。Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8。 2、在Vim中可以查看文件编码 :set fileencoding     解决用Vim查看文件乱码的问题,在 ~/.

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

参考

1Linux查看文件编码格式及文件编码转换

http://blog.csdn.net/jznhljg/article/details/3410750

2】 本文讲述的是iconvc语言库版本,非常值得一读

http://550480286.blog.163.com/blog/static/990932472010102451858555/

http://qq164587043.blog.51cto.com/261469/63349

3】 对选项进行了详细的介绍

http://www.cnblogs.com/morebetter/archive/2005/05/28/164099.html

4】 批量转换

http://init7.blog.51cto.com/860934/182003

目录
相关文章
|
3月前
|
关系型数据库 MySQL API
|
Python
基于hi-nginx的web开发(python篇)——utf-8编码
一致地utf-8编码,非常重要。对python2而言,尤其如此。 如果在hi-nginx中使用的是python2,同时又需要无障碍地使用中日韩等文字,那么一定不要忘记使用: #-*- coding:utf-8 -*- 同时,任何模板文件,也应该使用utf-8编码。
877 0