我希望将一些utf8文件(文本文件)转换为ISO-8859-1文件。我使用以下命令行:
问题在于它被转换为SUB字符,就像你在notepad++中打开word文件时看到的东西一样。
在notepad++中,有一个菜单选项可以将文件从一种编码转换为另一种编码。任何字符都没有问题。在Unix中是否有类似的功能来完成这个工作?
谢谢。
iconv -c -f UTF-8 -t ISO8859-1 input_file > output_file
创建的文件(output_file)确实使用了新编码,即使是带重音符号的字母也没有问题。
只有一个字符不正确:撇号... 不是键盘上数字 4 上显示的那个,而是像在 Word 文件中可以输入的那种。
’
问题在于它被转换为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中是否有类似的功能来完成这个工作?
谢谢。
’
在 ISO-8859-1 中不存在... 这使得“正确”的或者预期的结果有些不清楚。 - decezeiconv
进行转换之前,将’
替换为其他字符,比如:echo Frank’s ’ | sed "s/’/'/g"|iconv -f utf8 -t iso8859-1
将输出Frank's '
。 - James Brownsed "s/’/'/g" input_file | iconv [your params here] > output_file
- James Brown