如何解决XML文件在记事本中显示乱码并正确修复编码问题?
- 内容介绍
- 相关推荐
本文共计1066个文字,预计阅读时间需要5分钟。
记事本默认使用系统区域设置的编码(如中文+Windows+是GBK)打开文件,但XML文件头部声明的编码(例如:
实操建议:
- 用支持编码探测的编辑器(如 VS Code、Notepad++)打开,看状态栏实际识别出的编码;VS Code 会显示右下角的编码名,点击可重新以指定编码打开
- 用命令行快速验证:
file -i your.xml(Linux/macOS)或chcp+type your.xml | more(Windows 命令提示符下粗略观察) - 直接查看文件前几个字节:UTF-8 带 BOM 是
EF BB BF,UTF-16 LE 是FF FE,GBK 没有标准 BOM,但开头<?xml如果显示成“涓
用记事本另存为修复编码,为什么改了 encoding 属性还是乱?
记事本保存时若选错编码,会**重写文件字节并覆盖原始内容**,不是单纯改个声明。常见错误是:XML 原本是 UTF-8(无 BOM),你在记事本里用“UTF-8”保存,结果记事本偷偷加了 BOM(EF BB BF),而某些老解析器(如部分 Java SAX 实现)会把 BOM 当作非法字符报错 Content is not allowed in prolog。
本文共计1066个文字,预计阅读时间需要5分钟。
记事本默认使用系统区域设置的编码(如中文+Windows+是GBK)打开文件,但XML文件头部声明的编码(例如:
实操建议:
- 用支持编码探测的编辑器(如 VS Code、Notepad++)打开,看状态栏实际识别出的编码;VS Code 会显示右下角的编码名,点击可重新以指定编码打开
- 用命令行快速验证:
file -i your.xml(Linux/macOS)或chcp+type your.xml | more(Windows 命令提示符下粗略观察) - 直接查看文件前几个字节:UTF-8 带 BOM 是
EF BB BF,UTF-16 LE 是FF FE,GBK 没有标准 BOM,但开头<?xml如果显示成“涓
用记事本另存为修复编码,为什么改了 encoding 属性还是乱?
记事本保存时若选错编码,会**重写文件字节并覆盖原始内容**,不是单纯改个声明。常见错误是:XML 原本是 UTF-8(无 BOM),你在记事本里用“UTF-8”保存,结果记事本偷偷加了 BOM(EF BB BF),而某些老解析器(如部分 Java SAX 实现)会把 BOM 当作非法字符报错 Content is not allowed in prolog。

