其实说到编码转换,那就不得不说到iconv这个库了,如果已经安装了这个工具,那在命令行下直接打这个命令就行了。下面就用这个工具来实现中文系统下的常用编码转换。
首先,来了解一下iconv这个命令的使用方法。命令格式如下:
iconv -f 源编码 -t 目标编码 文件名
-f 参数指所要转换文件的文件编码,当然必须事先知道文件的编码,不然不能正确转换。
-t 参数指希望转换成的文件编码,当然应该知道所指定文件的编码能不能转换成该编码,不然转换后的结果可能一无所用。比如你将中文编码转换成西欧的某种编码的话,是没有什么意义的。
文件名 就是你希望转换的文件的名称的,当然也可以包含路径了。
比如,将notepad.txt文件用GBK转换成UTF8,命令如下:
iconv -f gbk -t utf8 notepad.txt
如果,转换文件编码的同时不想覆盖源文件,可以使用如下命令:
iconv -f gbk -t utf8 notepad.txt > notepad-utf8.txt
如果要批量转换文件编码,可以使用以下命令:
find ./ -type d -exec mkdir -p newdir/{} \;
find ./ -type f -exec iconv -f gbk -t utf8 {} -o newdir/{} \;
将当前目录下的所有文件转换成UTF8格式放在newdir目录下。
用法: iconv [选项...] [文件...]
转换给定文件的编码。
来自:http://www.iusecms.com/page/2/
首先,来了解一下iconv这个命令的使用方法。命令格式如下:
iconv -f 源编码 -t 目标编码 文件名
-f 参数指所要转换文件的文件编码,当然必须事先知道文件的编码,不然不能正确转换。
-t 参数指希望转换成的文件编码,当然应该知道所指定文件的编码能不能转换成该编码,不然转换后的结果可能一无所用。比如你将中文编码转换成西欧的某种编码的话,是没有什么意义的。
文件名 就是你希望转换的文件的名称的,当然也可以包含路径了。
比如,将notepad.txt文件用GBK转换成UTF8,命令如下:
iconv -f gbk -t utf8 notepad.txt
如果,转换文件编码的同时不想覆盖源文件,可以使用如下命令:
iconv -f gbk -t utf8 notepad.txt > notepad-utf8.txt
如果要批量转换文件编码,可以使用以下命令:
find ./ -type d -exec mkdir -p newdir/{} \;
find ./ -type f -exec iconv -f gbk -t utf8 {} -o newdir/{} \;
将当前目录下的所有文件转换成UTF8格式放在newdir目录下。
用法: iconv [选项...] [文件...]
转换给定文件的编码。
来自:http://www.iusecms.com/page/2/
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/4996/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
评论列表
2012-2-21 07:09 | mark89803
让人看后在各论坛纷纷转贴的好帖
2012-2-17 02:02 | hxngb5if
谢谢楼主,好久没看到这么好的贴了
分页: 1/1 1