ZH
我的工具

XML 格式化工具

用 2 个空格、4 个空格或制表符缩进来美化 XML,或压缩为一行。会原样保留混合内容、CDATA 和 xml:space="preserve",出错时显示行号和列号。

输出
格式化后的 XML

格式良好 · 12 个元素 · 5 个属性 · 深度 4 · 346 → 403 个字符

我的工具 →
广告

粘贴挤在一行里的 XML——SOAP 响应、RSS 订阅源、SVG 导出文件、站点地图、Android 或 XAML 布局——就能得到每个元素一行、带缩进的结果。格式化工具会先按 XML 1.0 的规则检查文档是否格式良好,所以缺少结束标签或出现孤立的 & 时,会指出它的行号和列号,而不是输出一份损坏的结果。

使用方法

  1. 粘贴 XML,格式化后的版本会随输入实时显示。
  2. 选择 2 个空格、4 个空格或制表符。
  3. 可选:让每个属性单独占一行、把空元素写成 <tag/>,或删除注释。
  4. 切换到压缩,可以再次去掉缩进,便于传输。

计算公式

element-only content → one child per line, indented one level; mixed content, CDATA and xml:space="preserve" → kept exactly

当一个元素只包含其他元素时,元素之间的空白不是数据,所以可以放心地重新缩进。当文本紧挨着元素(XHTML 或 DocBook 中的混合内容),或元素要求 xml:space="preserve" 时,每个空格都可能有意义,所以该元素会按原样复制。属性值、实体引用和引号字符绝不会被改动。

示例

示例书单是挤在一行里的。用 2 个空格格式化后变成 16 行:<catalog> 顶格,每个 <book id="…"> 缩进两格,<author>、<title> 和 <price> 缩进四格。简介里混合了文字和 <em>创建</em>,所以保持原样的单独一行,<reviews/> 仍然是自闭合的。

常见问题

为什么有一个元素仍然是一行?

因为它包含与子元素混在一起的文本、CDATA,或 xml:space="preserve"。在那里加换行会改变文档的文本内容,所以格式化工具不去动它。

什么会让 XML 不是格式良好的?

常见原因有:结束标签与开始标签不匹配、孤立的 &(应写成 &amp;)、没有引号的属性、两个根元素,或者 XML 没有预定义的 HTML 实体,例如 &nbsp;。错误信息会指出具体规则和位置。

会按 Schema 验证吗?

不会,只检查格式是否良好。DTD 和 XSD 验证需要 Schema 文件,这里没有做;如需详细的格式良好性报告,请使用 XML 验证器。

我的 XML 会被上传吗?

不会。解析和格式化都在你的浏览器中完成。

资料来源

最后更新:

引用此工具
APA

kakaoCalc. (2026, November 8). XML 格式化工具. https://kakao.mobile/zh/tools/xml-formatter/

MLA

“XML 格式化工具.” kakaoCalc, 8 Nov. 2026, kakao.mobile/zh/tools/xml-formatter/.

广告