在 VS Code 中以 ANSI 编码保存文件

blu*_*isk 10 encoding visual-studio-code

我有一个需要处于 ANSI 模式的文本文件。它仅指定:ANSI。Notepad++ 有一个转换为 ANSI 的选项,这可以解决问题。

\n\n

在 VS Code 中我没有找到这个编码选项。所以我读了一下它,看起来 ANSI 并不真正存在,实际上应该被称为 Windows-1252。

\n\n

但是,Notepad++ 的 ANSI 编码和 VS Code 的 Windows-1252 之间存在差异。它为字符选择不同的代码点,例如带重音的大写 e (\xc3\x89),从文档中可以明显看出。

\n\n

然而,当我让 VS Code 猜测由 Notepad++ 转换为 ANSI 的文档的编码时,它仍然猜测 Windows-1252。

\n\n

所以问题是:

\n\n
    \n
  • 有没有类似纯ANSI的东西?
  • \n
  • VS Code 如何转换成它?
  • \n
\n

Von*_*onC 12

查看即将推出的 VSCode 1.48(2020 年 7 月)浏览器支持

它还解决了问题 33720,您之前必须强制对整个项目进行编码,例如:

"files.encoding": "utf8",
"files.autoGuessEncoding": false
Run Code Online (Sandbox Code Playgroud)

现在可以按文件设置编码:

文本文件编码支持

Web 版现在也支持 VSCode 桌面版的所有文本文件编码。

https://im4.ezgif.com/tmp/ezgif-4-af94752f0c33.gif

如您所见,编码列表包括ISO 8859-1,这是“ANSI 编码”所能表示的最接近的规范
Windows 代码页1252是根据 ISO 8859-1 创建的,但并不完全相等。
它与 IANA 的 ISO-8859-1 不同,它使用可显示字符而不是 80 到 9F(十六进制)范围内的控制字符

来自维基百科

历史上,“ANSI 代码页”一词在 Windows 中用于指代非 DOS 编码。其目的是其中大部分都是 ANSI 标准,例如 ISO-8859-1。

尽管 Windows-1252 是第一个也是迄今为止最流行的 Microsoft Windows 术语中如此命名的代码页,但该代码页从来都不是 ANSI 标准。

Microsoft 解释说:“用于表示 Windows 代码页的术语 ANSI 是一个历史参考,但现在是一个在 Windows 社区中继续存在的用词不当。”