Linux下对文件进行编码转换(简体→繁体,繁体→简体,简体繁体
其实说到编码转换,那就不得不说到iconv这个库了,如果已经安装了这个工具,那在命令行下直接打这个命令就行了。下面就用这个工具来实现中文系统下的常用编码转换。
首先,来了解一下iconv这个命令的使用方法。命令格式如下
iconv -f 编码 -t 编码 文件名
-f 参数指所要转换文件的文件编码,当然必须事先知道文件的编码,不然不能正确转换。
-t 参数指希望转换成的文件编码,当然应该知道所指定文件的编码能不能转换成该编码,不然转换后的结果可能一无所用。比如你将中文编码转换成西欧的某种编码的话,是没有什么意义的。
文件名 就是你希望转换的文件的名称的,当然也可以包含路径了。
比如将a.txt文件用GB2312(简体)转换成BIG5(繁体),命令如下:
$iconv -f GB2312 -t BIG5 a.txt
当然也可以使用iconv -l来查看都有哪些编码可用,命令如下:
$iconv -l
那么,如果不知道文件的编码怎么办?比如我的系统中有繁体字编码的文件,也有UTF-8编码的文件,又有简体字编码的文件,但是系统说使用的编码是简体的。怎样把所有文件的编码都转换成简体字,或者怎样将所有文件的编码变成繁体字编码,或者怎样将所有的文件都转换成UTF-8编码呢?下面的这段程序将告诉你去怎样实现这个功能。
首先,来了解一下iconv这个命令的使用方法。命令格式如下
iconv -f 编码 -t 编码 文件名
-f 参数指所要转换文件的文件编码,当然必须事先知道文件的编码,不然不能正确转换。
-t 参数指希望转换成的文件编码,当然应该知道所指定文件的编码能不能转换成该编码,不然转换后的结果可能一无所用。比如你将中文编码转换成西欧的某种编码的话,是没有什么意义的。
文件名 就是你希望转换的文件的名称的,当然也可以包含路径了。
比如将a.txt文件用GB2312(简体)转换成BIG5(繁体),命令如下:
$iconv -f GB2312 -t BIG5 a.txt
当然也可以使用iconv -l来查看都有哪些编码可用,命令如下:
$iconv -l
那么,如果不知道文件的编码怎么办?比如我的系统中有繁体字编码的文件,也有UTF-8编码的文件,又有简体字编码的文件,但是系统说使用的编码是简体的。怎样把所有文件的编码都转换成简体字,或者怎样将所有文件的编码变成繁体字编码,或者怎样将所有的文件都转换成UTF-8编码呢?下面的这段程序将告诉你去怎样实现这个功能。
相关推荐
amberom 2019-12-24
1. 首先,我得知道这个文件具体采用的是什么样的编码,如果是ISO-8859我将会把它转成UTF-8,其他的ASCII这些都先不做处理,这里可以使用file filename或者是enca iconv
守正出奇 2013-08-15
wenteryan 2015-01-28
周游列国之仕子 2020-09-21
hedongli 2020-09-01
liusarazhang 2020-06-28
TammyJi 2020-06-14
89411051 2020-06-14
JF0 2020-06-13
88384957 2020-06-12
FORYAOSHUYUN 2020-06-11
84590091 2020-06-08
88540591 2020-06-01
cenylon 2020-05-25
CloudXli 2020-05-16
cherayliu 2020-05-11
kaixinfelix 2020-03-27
liusarazhang 2020-05-01
81214051 2020-04-25