必须将global encoding、project encoding和default encoding for properties files均设为utf-8,并勾选transparent native-to-ascii conversion,且重启webstorm生效;否则新建文件仍可能用gbk或iso-8859-1编码。

新建文件默认用 GBK(Windows)或 ISO-8859-1(macOS/Linux),不是因为 WebStorm “不支持 UTF-8”,而是它没被明确告知“所有新文件一律用 UTF-8”——必须同步锁死三层编码策略,缺一不可。
Global Encoding 和 Project Encoding 必须都设为 UTF-8
WebStorm 读取/保存新建文件时,按优先级 fallback:先看文件自身声明(BOM/<meta charset>),再查 Project Encoding,最后才用 Global Encoding。只改其中一个,等于白改。
-
Global Encoding控制新建项目、新建文件的默认读取方式(比如你点 File → New → JavaScript File) -
Project Encoding决定当前项目下新建文件的保存编码,也参与读取逻辑 - 两者不同步 → 新建文件可能用 GBK 保存,但编辑器用 UTF-8 解析,立刻显示方块或问号
Default encoding for properties files 必须设 UTF-8 并勾选 Transparent native-to-ascii conversion
Java/Android/Spring 项目里大量用 .properties 文件,如果这里漏设,msg=你好 会被自动转成 msg=\u4f60\u597d,且 IDE 不提示、不警告。
- 不勾选
Transparent native-to-ascii conversion:中文键值强制转义,无法直接编辑 - 即使
Project Encoding是 UTF-8,只要这个选项关着,.properties 就走 ASCII 转义逻辑 - 该设置在
Settings / Preferences → Editor → File Encodings最底部
改完必须重启 WebStorm,否则部分设置不生效
WebStorm 的编码配置热加载不可靠,尤其 Global Encoding 和 Transparent native-to-ascii conversion 这两项,不重启大概率继续新建 GBK 文件。
- 点 OK 后,务必完全退出(macOS:Cmd+Q;Windows:右上角 × 关闭所有窗口)再重开
- 重启后打开任意新文件(如
test.js),右下角状态栏应直接显示UTF-8,而不是灰色的GBK或ISO-8859-1 - 已有文件不会自动转码,新建文件才受此设置影响
最容易被忽略的是:改完这三项后仍出现新建文件非 UTF-8,大概率是没重启,或者误把 Default encoding for properties files 留在了默认的 ISO-8859-1 ——这个坑连老手都会踩两次。











