如何让Vim正确显示文件而不是显示^ @字符

时间:2012-02-06 02:03:01

标签: windows vim notepad

我有一个文件,在Notepad和Vim中显示不同的内容。

该文件在Windows记事本下正常显示:

picture of file in Windows Notepad

使用Vim时,每个字符都会添加奇怪的字符。

picture of file in Vim

任何人都知道如何在Windows环境下解雇Vim中那些奇怪的角色?

3 个答案:

答案 0 :(得分:5)

如您所见:TSS显示为T^@S^@S^@(二进制文件:54 00 53 00 53 00)。
因为vim将\0x00显示为^@。听起来像UTF16LE


您可以将UTF16LE转换为UTF8

:e ++enc=UTF16LE
:set fenc=UTF8
:w

答案 1 :(得分:1)

看起来像unicode。您可以在记事本中打开文件并将其另存为ascii。

或者,如果您不想创建新文件,可以更改vimrc设置以启用多字节字符编码。

以下是来自vim wiki的更多信息:
http://vim.wikia.com/wiki/Working_with_Unicode

答案 2 :(得分:1)

文件存储为UTF-16,其中每个字符由两个字节表示。 VIM打开它就像是ASCII或UTF-8文件一样,因此每对字节变成两个字符。

记事本识别编码,但显然VIM没有。打开文件时指定编码。