← 返回首页

在vscode中打开JAVA文件乱码

编程开发 亲身经历 公开
内容简要
使用VS Code打开GBK编码的Java文件时出现乱码,通过选择GBK编码重新打开文件解决。
坑点
编辑器默认按UTF-8解码文件,而GBK编码的文件按UTF-8解码会出现乱码。
注意事项

临时修复:

  • 点击右下角状态栏的编码(显示UTF-8的地方)
  • 选择Reopen with Encoding(通过编码重新打开)
  • 选择GB2312或GBK(建议GB18030,兼容性最好)

永久设置:

  • 在 .vscode/settings.json 里添加以下配置:
  • {"files.encoding": "gb18030","files.autoGuessEncoding": true}

这样这个工作区下所有文件默认按GBK编码打开。

转换编码方式:

  • 在VS Code中选择“通过编码保存”,选择自己想要的编码。

今天的使用vscode打开java文件时出现乱码,原来vscode默认为UTF-8的编码打开,因此使用UTF-8的编码打开GBK肯定会出现乱码的

image.png

image.png

我点击了右下角UTF-8编码会弹出选择编码重新打开,我点击后选GBK就正常了。

image.png

image.png

image.png

这是典型的编码不匹配问题:编辑器默认按 UTF-8 解码文件,而你的文件实际是 GBK 存的,GBK 的中文字节按 UTF-8 解读就变成 �(绿色菱形问号)。

为什么不能自动识别? 因为 GBK 与其他编码的字节范围高度重叠,自动探测不可靠(比如一段 GBK 文本经常也能被当成 Latin-1/Big5 “合法”解读),所以编辑器只能猜一个默认值,不会贸然猜 GBK。

解决办法(编辑器基于 VS Code 内核):

  1. 临时修一次:点右下角状态栏的编码(显示 UTF-8 的地方)→ Reopen with Encoding(通过编码重新打开) → 选 GB2312 或 GBK(建议 GB18030,兼容性最好)。
  1. 永久设置:在 .vscode/settings.json 里加:

```json

{

"files.encoding": "gb18030",

"files.autoGuessEncoding": true

}

```

这样这个工作区下所有文件默认按 GBK 系编码打开。

我现在想有没办法把GBK编码直接转成UTF-8的编码方式呢?

================================================

可以在vscode中选择”通过编码保存“,选择自己想要的编码就行了,比较方便。

image.png

本文内容仅代表作者个人观点、经历或转述,不代表任何官方立场,仅供参考,不构成任何专业建议。据此操作产生的风险由读者自行承担。
发布于 2026-10-14 15:04:26 ID: 18