所有俄语字母都变为“???” 在 Visual Studio 代码中

Joh*_*nko 3 character-encoding visual-studio-code

每次我通过 VSCode 保存并运行文件时,所有俄语字母都会更改为“????”。

截屏

Álv*_*lez 5

根据状态栏,您已将文件打开为Windows-1252。这是西欧 Windows 操作系统的默认 ANSI 代码页,它根本无法存储西里尔字符。

在此输入图像描述

我建议您花一点时间为这两个指令设置正确的默认配置:

// The default character set encoding to use when reading and writing files. This setting can be configured per language too.
"files.encoding": "utf8",

// When enabled, will attempt to guess the character set encoding when opening files. This setting can be configured per language too.
"files.autoGuessEncoding": false,
Run Code Online (Sandbox Code Playgroud)

如果您一般不使用 UTF-8,请选择不同的编码。如果您通常混合不同的编码,您也可以启用files.autoGuessEncoding,但请注意,这并不神奇(没有可靠的方法以编程方式检测文本编码,至少在文本编辑器等简单工具中是这样)。

这些指令也可以在每个项目的基础上设置,甚至可以在每个类型的文件基础上设置。此外,当前文件可以完全绕过先前的设置;最简单的方法是单击状态栏中的编码名称并选择一个命令:

  • 使用编码重新打开会使用不同的编码呈现文件。它不会改变文件。

  • 使用编码保存将文件转换为另一种编码。它确实修改了文件,因此您需要确保源编码是正确的。

  • “files.autoGuessEncoding”:true (2认同)
  • “使用编码重新打开会使用不同的编码呈现文件。它不会更改文件。” 这很有帮助。现在我明白它是如何工作的了。太感谢了。 (2认同)