使用iconv命令将utf8转换为ISO8859-1

时间:2017-06-07 12:05:18

标签: unix encoding converter

我想将一些utf8文件(文本文件)转换为ISO-8859-1文件。我使用这个命令行:

iconv -c -f UTF-8 -t ISO8859-1 input_file > output_file

创建的文件(output_file)确实在新的编码中,甚至强调的字母都很好。

只有一个字符不是:撇号...不是与键4上显示的字符对应的字符,而是与单词文件中的字符相对应的字符。

问题是它被转换为SUB字符,就像你在notepad ++中打开word文件时会看到的那样。

 (I copy the SUB here seen in notepad++ and it displays like that, obviously invisible when I submit this page)

在notepad ++中,有一个菜单选项可将文件从编码转换为另一种编码。任何角色都没有问题。在Unix中有没有可以胜任的东西?

谢谢

1 个答案:

答案 0 :(得分:2)

好吧,在使用进行转换之前,您可以将'替换为其他内容(iconv),例如:

echo Frank’s ’ | sed "s/’/'/g" | iconv -f utf8 -t iso8859-1
Frank's '

转换类似的文件:

sed "s/’/'/g" input_file | iconv [your params here] > output_file