我有一个文件,在Notepad和Vim中显示不同的内容。
该文件在Windows记事本下正常显示:
使用Vim时,每个字符都会添加奇怪的字符。
任何人都知道如何在Windows环境下解雇Vim中那些奇怪的角色?
答案 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没有。打开文件时指定编码。