我有一个在记事本和 Vim 中显示不同内容的文件。
该文件在 Windows 记事本下正常显示:
使用 Vim 时,每个字符都会添加奇怪的字符。
有人知道如何在 Windows 环境下消除 Vim 中的那些奇怪字符吗?
如您所见:TSS
显示为T^@S^@S^@
(二进制:)54 00 53 00 53 00
。
因为 vim 显示\0x00
为^@
. 听起来像UTF16LE
。
您可以转换UTF16LE
为UTF8
:
:e ++enc=UTF16LE
:set fenc=UTF8
:w
该文件存储为 UTF-16,其中每个字符由两个字节表示。VIM 像打开 ASCII 或 UTF-8 文件一样打开它,因此每对字节都转换为两个字符。
记事本识别编码,但显然 VIM 没有。打开文件时指定编码。
这看起来像unicode。您可以在记事本中打开文件并将其保存为 ascii。
或者,如果您不想创建新文件,您可以更改 vimrc 设置以启用多字节字符编码。
以下是来自 vim wiki 的更多信息:http:
//vim.wikia.com/wiki/Working_with_Unicode