在字符集之间转换文本文件的最快、最简单的工具或方法是什么?
具体来说,我需要从 UTF-8 转换为 ISO-8859-15,反之亦然。
一切顺利:用您最喜欢的脚本语言、命令行工具或操作系统、网站等的其他实用程序编写单行代码。
迄今为止最好的解决方案:
在 Linux/UNIX/OS X/cygwin 上:
-
Gnu iconv建议来自特罗尔斯·阿尔文最好用作为过滤器。它似乎是普遍可用的。例子:
$ iconv -f UTF-8 -t ISO-8859-15 in.txt > out.txt
正如所指出的Ben, 有一个使用 iconv 的在线转换器.
-
recode (manual) 建议来自厚脸皮软件将转换一个或多个文件就位。例子:
$ recode UTF8..ISO-8859-15 in.txt
这个使用更短的别名:
$ recode utf8..l9 in.txt
重新编码还支持surfaces它可用于在不同的行结束类型和编码之间进行转换:
将换行符从 LF (Unix) 转换为 CR-LF (DOS):
$ recode ../CR-LF in.txt
Base64编码文件:
$ recode ../Base64 in.txt
您也可以将它们结合起来。
将具有 Unix 行结尾的 Base64 编码的 UTF8 文件转换为具有 Dos 行结尾的 Base64 编码的 Latin 1 文件:
$ recode utf8/Base64..l1/CR-LF/Base64 file.txt
在 Windows 上电源外壳 (杰·巴祖兹):
PS C:\> gc -en utf8 in.txt | Out-File -en ascii out.txt
(但不支持 ISO-8859-15;它表示支持的字符集是 unicode、utf7、utf8、utf32、ascii、bigendianunicode、default 和 oem。)
Edit
你的意思是 iso-8859-1 支持吗?使用“String”可以做到这一点,例如反之亦然
gc -en string in.txt | Out-File -en utf8 out.txt
注意:可能的枚举值为“Unknown、String、Unicode、Byte、BigEndianUnicode、UTF8、UTF7、Ascii”。
- CsCvt - Kalytta 的字符集转换器是另一个很棒的基于命令行的 Windows 转换工具。
独立实用程序方法
iconv -f ISO-8859-1 -t UTF-8 in.txt > out.txt
-f ENCODING the encoding of the input
-t ENCODING the encoding of the output
您不必指定这些参数中的任何一个。它们将默认为您当前的区域设置,通常是 UTF-8。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)