30秒解决 Cursor 打开 GBK 文件乱码问题
在使用 Cursor 打开一些老项目时,经常会遇到中文注释或字符串显示成“��”的乱码。这通常是因为 源码文件是 GBK/GB2312 编码,而编辑器默认用 UTF-8 打开导致的。
与其花时间猜测文件的真实编码,最简单高效的办法就是:让编辑器知道该项目主要用 GBK,并在需要时手动指定正确的编码。下面的步骤正是基于这个思路。
1. 现象
- 中文显示为乱码。
- 右下角状态栏显示 UTF-8。
这说明 Cursor 正在用错误的编码方式读取源码。
2. 解决步骤
步骤 1:配置工作区编码
在项目根目录下新建或修改 .vscode/settings.json:
{
"files.encoding": "gbk",
"files.autoGuessEncoding": true
}
这样一来:
files.encoding明确告诉 Cursor:这个项目默认使用 GBK 打开。autoGuessEncoding提高了兼容性,能自动识别不同文件的细微差别(比如 GB2312/GB18030),避免反复切换。
完成后,按 Ctrl+Shift+P → 输入 Developer: Reload Window 重载窗口。
步骤 2:重新用正确编码打开文件
即使设置了默认编码,已经打开的文件还是会按旧规则显示,需要重新载入:
- 打开乱码的文件;
- 点击右下角 UTF-8;
- 选择 Reopen with Encoding → Chinese (GBK);
- 如果还不对,可以尝试 GB18030/GB2312。
这样文件会被立即用正确的方式解码,中文恢复正常显示。
3. 总结
- Cursor 默认是 UTF-8 打开文件,这对新项目友好,但对老的 GBK 项目就会出现乱码。
- 最优解不是强行改动源码编码,而是通过 工作区配置 + Reopen with Encoding,用最小的改动快速恢复正常显示。
- 这种方式简单直观,几乎没有副作用,非常适合需要立即解决乱码问题的场景。

1403

被折叠的 条评论
为什么被折叠?



