必须同时将global encoding、project encoding和default encoding for properties files设为utf-8,并勾选transparent native-to-ascii conversion,最后重启webstorm生效;否则新建文件仍可能用gbk,.properties中文会被转义,且部分设置热加载不可靠。

必须同时设置 Global Encoding 和 Project Encoding 为 UTF-8,否则新建文件仍可能用 GBK(Windows 下尤其常见)。
Global Encoding 和 Project Encoding 必须一起改
WebStorm 的编码 fallback 逻辑是:先看文件是否有 BOM 或 <meta charset>,没有则查 Project Encoding,项目不存在时才用 Global Encoding。只改其中一个,等于没改。
-
Global Encoding控制新建项目、新建文件的默认读取方式 -
Project Encoding决定当前项目下新建文件的保存编码,也参与已有文件的读取判断 - 两者都设为
UTF-8才能堵住乱码源头
Default encoding for properties files 不能漏
.properties 文件中文会被自动转成 \u4f60\u597d,不是因为没设 UTF-8,而是这个单独选项默认是 ISO-8859-1,且 IDE 不提示。
- 在
Settings / Preferences → Editor → File Encodings中找到该选项 - 设为
UTF-8 - 必须勾选
Transparent native-to-ascii conversion——这是关闭自动转义的开关
改完必须重启 WebStorm
部分设置(尤其是 Global Encoding)热加载不可靠,点 OK 后不退出重进,很可能无效。
- 关闭所有窗口,完全退出 WebStorm
- 再启动,打开任意新文件确认右下角显示
UTF-8 - 新建一个
.properties文件,输入msg=你好,不变成msg=\u4f60\u597d才算生效
已有文件不会自动转码
全局和项目编码设对,只影响「以后新建」的文件。已存在的 .js、.html 等仍保持原编码(如 GBK),编辑时右下角会显示识别出的编码(如 GBK 带 ⚠️)。
- 点击右下角编码名 → 输入
gbk快速定位 → 选中后弹窗选Convert - 务必勾选 Convert encoding of file content
- 源编码要选对(比如原是 GBK 就选
GBK,不是瞎猜) - 避开
node_modules/、vendor/等第三方目录,只处理自己写的代码
最容易被忽略的是:Convert Files to UTF-8 操作里源编码选错,或递归进了依赖目录;还有就是 Terminal 和 Run Configuration 的 file.encoding=UTF-8 没配全——编辑器里看着正常,控制台一输出中文还是方块。











