解决代码文件中的乱码问题

AI-摘要
小米里的大麦 GPT
AI初始化中...
介绍自己 🙈
生成本文简介 👋
推荐相关文章 📖
前往主页 🏠
前往爱发电购买
解决代码文件中的乱码问题
小米里的大麦解决代码文件中的乱码问题
你有没有遇到过:代码在 Visual Studio 中完美正常,在 VS Code 一打开却全是乱码?明明都是微软出品,却总在编码上“闹别扭”。别急,这个问题本质上是字符编码不一致,下面来详细说说。
1. 乱码的本质:编码不匹配
- Visual Studio 默认保存为 GBK(代码页 936)或系统本地编码。
- VS Code 默认以 UTF-8 无 BOM 方式解读文件。
当文件中含有中文或非 ASCII 字符时,VS Code 用 UTF-8 去解析 GBK 编码的文件,自然就乱码了。
2. 解决方案一:手动保存为 UTF-8 带 BOM
- 在 Visual Studio 中打开文件选择另存为。
- 点击保存按钮旁的下拉箭头 → “带编码保存”(Save with Encoding)。
- 选择 Unicode (UTF-8 带签名) - 代码页 65001。
- 保存。
处理完后,VS Code 打开即正常显示。
3. 解决方案二:设置默认编码(推荐)
什么?你说你用自动保存,每一次都要另存为太麻烦了。没关系,可以:
- 在 Visual Studio 顶部搜索框输入“使用特定编码保存文件”。
- 进入设置,勾选该选项。
- 将编码设为 Unicode (UTF-8 带签名) - 代码页 65001。
以后所有文件自动以此编码保存,再也不用手动操作。
4. 为什么必须带 BOM?无 BOM 还是会乱码?
BOM(Byte Order Mark)是文件开头的三个隐藏字节 EF BB BF,作用是明确宣告“我是 UTF-8”。
- 无 BOM:编辑器只能“猜”编码,Windows 系统常猜成 GBK → 中文乱码。
- 带 BOM:强制声明编码,几乎所有编辑器(包括 VS Code、记事本)都能正确识别。
因此,在 Windows 环境下,UTF-8 必须带 BOM 才能最大程度避免误判。
5. 行尾序列也要注意:推荐 CRLF
换行符也有两种标准:
- CRLF (\r\n):Windows 原生格式,Visual Studio 默认使用。
- LF (\n):Linux/macOS 标准。
用 LF 在 Windows 上可能导致:
- 旧版记事本显示为一行。
- Git 提示警告(虽可关闭,但烦人)。
所以总结一下:
- Windows 最佳组合:UTF-8 带 BOM + CRLF。
- Linux 最佳组合:UTF-8 无 BOM + LF(系统原生,更规范)。
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果












