VS Code Windows 终端中文乱码终极解决方案

VS Code Windows 终端中文乱码终极解决方案
Lay1. 问题背景
在 Windows 环境下使用 VS Code 开发 时,终端经常会出现中文乱码问题。
- 现象:程序输出的中文字符显示为乱码、方块或问号。
- 原因:
- Windows PowerShell/CMD 默认编码为 GBK (代码页 936)。
- VS Code 及现代编程语言默认输出 UTF-8 (代码页 65001)。
- 两者编码不一致导致“鸡同鸭讲”。
2. 解决方案
我们将修改 VS Code 的配置文件,强制 PowerShell 在启动时自动将编码切换为 UTF-8。
步骤一:打开配置文件
- 打开 VS Code。
- 使用快捷键
Ctrl + Shift + P打开命令面板。 - 输入
Preferences: Open Settings (JSON)并选择 “首选项: 打开设置 (JSON)”。关键点:请确保打开的是 用户设置 (User Settings),而不是 工作区设置 (Workspace Settings)。这样配置后,以后打开任何项目都会自动修复中文乱码问题。
步骤二:添加配置代码
在打开的 settings.json 文件的大括号 { ... } 中,添加(或替换)以下配置代码:
注意:如果文件中已有其他配置,请确保在上一个配置项末尾加上逗号
,以保持 JSON 语法正确。
1 | // 配置 Windows 终端配置列表 |
步骤三:保存并重启
- 按
Ctrl + S保存文件。 - 彻底关闭 VS Code 并重新打开。
- 点击顶部菜单 终端 (Terminal) -> 新建终端 (New Terminal)。
3. 验证是否成功
在新的终端窗口中,输入以下命令并回车:
1 | chcp |
- ✅ 成功:如果输出
Active code page: 65001,说明终端已成功切换为 UTF-8 模式,中文乱码问题解决。 - ❌ 失败:如果输出
936,请检查代码是否填写正确,或是否重启了 VS Code。
4. 原理解析 (为什么这样做有效?)
这段配置的核心在于 "args" 参数:
/c: 告诉 PowerShell 执行后面紧跟的命令。chcp 65001: 这是 Windows 切换编码页到 UTF-8 的命令。-NoExit: 关键参数。执行完chcp命令后,不要关闭窗口,而是停留在当前 Shell 中供用户继续操作。如果不加这个参数,终端窗口会在切换编码后瞬间关闭。
Comment
匿名评论隐私政策





