“not well-formed”表示XML文档违反基本语法规则,如标签未闭合、嵌套交叉、自闭合标签缺斜杠、属性值引号不匹配或含未转义的特殊字符(如

XML报错“not well-formed”表示文档不符合XML基本语法规则,不是格式良好的XML。这类错误通常在解析初期就被拒绝,和内容逻辑无关,只跟结构、符号、编码等底层规范有关。
检查XML是否闭合完整
XML要求所有开始标签必须有对应结束标签(或自闭合),且嵌套不能交叉。常见错误包括:
验证引号与特殊字符是否合规
属性值必须用单引号或双引号包裹,且内部不能混用或缺失;同时,小于号
- 错误:
- (属性值没引号)
- 错误:
5 应写成5 zuojiankuohaophpcn 10 - 错误:
He said "Hello" 若外层用双引号,内部需转义为 " 或改用单引号包裹
确认编码声明与实际编码一致
文件开头的必须与文件真实编码完全匹配。常见问题:
- 声明为UTF-8,但文件实际保存为GBK(尤其Windows记事本易出此错)
- BOM头干扰:UTF-8 with BOM可能被某些解析器识别为非法字符,建议保存为无BOM UTF-8
- 中文路径或内容含不可见控制字符(如零宽空格、软回车),可用编辑器“显示所有字符”功能排查
用工具快速验证XML格式
人工检查易疏漏,推荐以下轻量方式验证:
- 浏览器直接打开XML文件:现代Chrome/Firefox会高亮报错位置并提示原因
- 在线校验工具:如https://www.xmlvalidation.com/,粘贴内容或上传文件即可反馈具体行号和错误类型
- IDE辅助:VS Code安装“XML Tools”插件,可格式化+实时校验;IntelliJ/PyCharm默认支持XML语法检查
- 命令行(Linux/macOS):xmllint --noout yourfile.xml,返回空表示格式良好
不复杂但容易忽略。抓住闭合、引号、转义、编码四个关键点,再借助工具定位,99%的not well-formed错误都能快速解决。
应为 









