You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows系统如何将Visual Studio Code终端设置为UTF-8编码

Windows VS Code终端UTF-8制表符乱码解决方案

核心问题说明

单纯执行chcp 65001、添加编译编码参数只解决了编码传输层的问题,出现部分字符正常、部分字符乱码/显示为?/�,本质是三个配置缺漏:Java编译/运行时编码不统一、终端启动未固定切UTF-8代码页、终端使用的字体未收录对应Unicode区段的制表符。
之前移除-encoding UTF-8后大部分字符正常属于巧合:未指定编译编码时,javac会默认读取系统GBK编码,大部分低码位制表符刚好在GBK中有兼容映射,但\u2501(粗横框线)不在GBK兼容覆盖范围内,必然出现乱码。

分步配置步骤

1. 固定Gradle编译与运行编码

必须把UTF-8编译参数加回,不要依赖系统默认编码,在项目build.gradle中添加如下配置:

// 固定编译阶段编码为UTF-8
tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}
// 固定运行/测试阶段JVM默认编码为UTF-8
tasks.withType(JavaExec) {
    jvmArgs = ['-Dfile.encoding=UTF-8']
}
tasks.withType(Test) {
    systemProperty 'file.encoding', 'UTF-8'
}

2. 固定VS Code集成终端默认代码页

不要每次手动执行chcp 65001,直接配置终端启动自动切换:

  • 按下Ctrl+,打开VS Code设置,搜索terminal.integrated.profiles.windows,点击在settings.json中编辑
  • 根据你使用的默认终端添加启动参数:
    • 使用CMD时,对应配置项添加:"args": ["-k", "chcp 65001"]
    • 使用PowerShell时,对应配置项添加:"args": ["-Command", "chcp 65001"]
      配置示例(PowerShell):
"terminal.integrated.profiles.windows": {
    "PowerShell": {
        "source": "PowerShell",
        "args": ["-Command", "chcp 65001"],
        "icon": "terminal-powershell"
    }
}

3. 更换支持全量制表符的终端字体

这是\u2501单独乱码的核心原因:Windows终端默认的Consolas字体没有收录U+2500-U+257F区段的全部框线绘制字符,缺字时就会渲染为乱码。
在VS Code设置中搜索terminal.integrated.fontFamily,替换为支持全套制表符的等宽字体,可选方案:

  • Cascadia Mono:Win11系统自带,微软官方为终端开发的字体,字符覆盖完整,显示效果最优
  • NSimSun(新宋体):全版本Windows自带,字符覆盖全无需额外安装
  • JetBrains Mono:第三方免费编程字体,制表符对齐效果好
    修改字体后重启VS Code终端即可生效。

4. (可选)开启系统全局UTF-8支持

如果完成以上配置仍有偶发乱码,可以开启Windows系统级UTF-8支持:

  • 打开「控制面板」→「区域」→「管理」选项卡→点击「更改系统区域设置」
  • 勾选「Beta版:使用Unicode UTF-8提供全球语言支持」
  • 重启电脑后全局生效,所有程序默认使用UTF-8编码,无需单独切换代码页。

验证配置

新建测试类运行,所有框线字符正常显示无乱码即配置完成:

public class BoxDrawTest {
    public static void main(String[] args) {
        // 覆盖常用制表框线字符
        System.out.println("┌─┬─┐");
        System.out.println("├─┼─┤");
        System.out.println("━┃┓┫┛┻┗┣");
        System.out.println("└─┴─┘");
    }
}

注意:旧版独立CMD存在UTF-8渲染bug,不要用它做验证,优先使用VS Code集成终端或新版Windows Terminal运行程序。


内容的提问来源于stack exchange,提问作者SantasSpy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 22:33:01