XML 怎么格式化
- 粘贴 XML 内容,把
.xml文件拖到编辑器中,或通过 URL 加载。 - 点击格式化(或按 Ctrl+Enter),并选择缩进方式。压缩会删除元素之间的空白。
- 如果 XML 格式有误,错误框会显示出错的行、列和原因,并高亮对应的行。修正后即可复制或下载结果。
XML 格式化工具能做什么
- 美化排版——每个元素独占一行,可用 2 个空格、4 个空格或 Tab 缩进。
- 不改动数据——文本、属性值以及
&、 等实体都与源文件完全一致,只调整元素之间的空白。 - 保留混合内容——文本与标签混排的元素(如
<p>Hello <b>world</b></p>)以及带有xml:space="preserve"的元素都保持原样。 - 其他内容一律保留——XML 声明、DOCTYPE、注释、CDATA 段和处理指令都留在原位。
- 可选设置——把空元素写成
<a/>形式、删除注释,或压缩整个文档。 - 统计信息——文件大小、元素和属性数量以及嵌套深度。
XML 格式错误的常见原因
| 问题 | 示例 | 解决方法 |
|---|---|---|
| 标签嵌套顺序错误 | <b><i>text</b></i> | 先关闭内层元素:</i></b> |
| 未转义的 & 符号 | AT&T | 改写为 AT&T |
| 未转义的小于号 | a < b | 改写为 a < b,或使用 CDATA |
| 属性值没加引号 | <item id=7> | <item id="7"> |
| 存在两个根元素 | <a/><b/> | 用一个父元素把它们包起来 |
| 使用了 HTML 实体 | 、© | 改用  、©,或在 DTD 中声明 |
用命令行和代码格式化 XML
- Linux 和 macOS:
xmllint --format file.xml - Python:
xml.dom.minidom.parseString(text).toprettyxml(indent=" ") - C#:
XDocument.Parse(text).ToString() - Java:使用 XSLT 恒等转换(identity transform),并把
OutputKeys.INDENT设为yes - VS Code:安装 XML 扩展后,执行格式化文档(Format Document)命令
为什么选择 Online XML Formatter?
- 免费所有工具完全免费,不限次数,无需注册账号,也不会添加水印。
- 隐私安全所有处理均在您的浏览器本地完成。文件绝不会被上传。
- 快速页面轻量,在任何设备上都能瞬间加载。
- 随处可用支持 Windows、macOS、Linux、Android 和 iPhone。
常见问题
我的 XML 会被上传到服务器吗?
不会。格式化和校验都在你的浏览器中完成。只有从 URL 加载时,文件才会经由我们的服务器获取,因为浏览器会拦截大多数直接从其他网站下载的请求;内容会直接转交给你,不会被保存。
格式化会改变我的数据吗?
不会。只有元素之间的空白会变化。文本、属性值、实体、CDATA 段和注释都保持原样,包含混合内容的元素也不会被改动。
格式良好的 XML 和有效的 XML 有什么区别?
格式良好(well-formed)的 XML 遵守语法规则:只有一个根元素,标签正确嵌套并闭合,属性值带引号,特殊字符已转义。有效(valid)的 XML 还必须符合 Schema(XSD)或 DTD 的定义。本工具检查的是 XML 是否格式良好。
可以格式化很大的 XML 文件吗?
可以。一个包含 20,000 条记录、大小为 2.6 MB 的文件,不到一秒即可完成解析和格式化;编辑器只为可见的行绘制行号,因此操作依然流畅。