根本原因是vscode未加载语言资源,需手动安装.vsix包、确认启用、写入正确的locale.json文件并完全重启。

离线安装中文包后界面仍是英文,或部分菜单、提示仍显示乱码,根本原因不是“包没装上”,而是 VSCode 没加载到语言资源——离线包未解压、路径不对、locale.json 未正确写入,或 VSCode 启动时跳过了语言包加载流程。
确认中文语言包是否真被识别
VSCode 离线安装的 Chinese (Simplified) Language Pack 实际是一个 .vsix 文件,必须通过扩展管理器手动安装(不能直接丢进插件目录)。常见错误是双击 .vsix 没反应,或拖进窗口后提示“已禁用”,其实是 VSCode 正在运行中但扩展市场未启用离线安装权限。
- 关闭所有 VSCode 实例(包括后台进程,Windows 可查任务管理器里的
Code.exe) - 重新打开 VSCode,按
Ctrl+Shift+X进入扩展面板,点击右上角 “…” → “Install from VSIX…” - 选择你下载的
chinese-simplified-language-pack-*.vsix文件,安装完成后不要点“重载”,先看左下角是否弹出“Extension installed”提示 - 安装成功后,在扩展列表里搜索
@installed,确认Chinese (Simplified) Language Pack状态为 “Enabled”
检查 locale.json 是否被正确写入
即使语言包装上了,VSCode 也不会自动切语言。它依赖用户配置文件 locale.json 中的 "locale": "zh-cn" 字段。离线环境下,Configure Display Language 命令可能因无法联网校验而失效,导致命令面板里选了 zh-cn 但文件没更新。
- 手动定位配置目录:
Windows:%APPDATA%\Code\User\locale.json
macOS:$HOME/Library/Application Support/Code/User/locale.json
Linux:$HOME/.config/Code/User/locale.json - 用记事本或别的编辑器打开该文件,确保内容是:
{"locale":"zh-cn"}(注意:必须是小写zh-cn,不能是ZH-CN或zh_CN) - 如果文件不存在,新建一个;如果存在但内容为空或格式错误(比如多逗号、缺引号),直接覆盖为上述合法 JSON
- 保存后,**必须完全退出 VSCode(不是关窗口,是右键托盘图标退出)再重启**
离线环境下的终端和文件乱码更难调,别只盯界面
很多人以为“界面变中文=搞定”,结果一打开老项目文件全是方块,终端 print("你好") 输出一堆问号——这是因为离线安装只解决了 UI 层,没碰编码链路。而 VSCode 的文件读取、终端输出、甚至 Git 日志,都各自走独立编码路径。
- 右下角状态栏点编码名 → 选
Reopen with Encoding→ 依次试GBK、GB2312、UTF-8,能立刻显示中文的那个才是真实编码 - 确认后,立刻点同一位置 →
Save with Encoding→ 选utf8(全小写,无 BOM),把文件真正转成 UTF-8 存盘 - 终端乱码需额外处理:离线时无法用
chcp 65001自动注入,可手动在settings.json里硬编码终端启动参数:"terminal.integrated.profiles.windows": { "Command Prompt": { "path": "cmd.exe", "args": ["/K", "chcp 65001 > nul"] } } - 字体不生效?离线机器可能缺中文字体,
editor.fontFamily设为"Microsoft YaHei", "SimSun", "Consolas",确保至少有一个本地存在
离线场景最常被忽略的是:语言包安装成功 ≠ locale.json 被写入 ≠ 终端编码同步更新 ≠ 文件本身编码统一。四个环节断一个,都会表现为“部分乱码”。尤其要注意 locale.json 的路径和格式,这是离线模式下唯一可靠的生效入口。











