文本文件编码在终端上正确显示,而不是在编辑器中

时间:2011-10-07 12:51:09

标签: encoding

我遇到了文本文件编码的问题。

如果我使用* nix终端工具(如less,cat或更多)打开它,则会正确显示重音字符。 但是如果我用任何编辑器(例如vim)打开它,重音字符就会被打乱。

我的终端语言环境设置为tu UTF-8,我的编辑器(vim)将其默认编码设置为UTF-8。如果我用vim打开textfile.txt,我会看到加扰的重音符号,我将vim编码设置为UTF-8或ISO8859-1。

文件工具的输出是:

$ file textfile.txt
textfile.txt: ISO-8859 English text, with very long lines

我已经用iconv尝试了以下内容:

iconv -f iso-8859-1 -t utf-8 textfile.txt > textfile.utf8.txt

我明白了

$ file textfile.utf8.txt
textfile.utf8.txt: UTF-8 Unicode English text, with very long lines

用vim打开它会一直显示乱码,而且即使我使用猫或者更多,这次口音也会被扰乱。

我的目标是以UTF-8格式获取此文件,显然,正确显示重音字符。

[执行此操作的粗略方法是复制命令“more”的每个输出屏幕,并将其粘贴到编辑器中。必须有一种更聪明的方法来做到这一点。]

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

事实证明,该文件包含来自两种不同编码的字符,这就是为什么可视化在每种情况下都如此混乱,而iconv无法成功转换文件。无论如何,谢谢大家