XML 格式化

在线格式化、压缩与校验 XML 数据,基于浏览器原生解析器,语法错误提示清晰。

使用说明

  1. 把 XML 内容粘贴到输入框,或点击「示例」载入演示数据。
  2. 点击「格式化」生成两空格缩进的易读版本,点击「压缩」移除标签间空白。
  3. 若 XML 存在语法错误(标签未闭合等),会给出错误提示,修正后重新操作即可。
  4. 结果可直接点击右上角「复制」按钮取用。

常见问题

支持带命名空间的 XML 吗?
支持。格式化基于浏览器原生 XML 解析器,命名空间声明与带前缀的标签都会原样保留。
注释与处理指令会保留吗?
会。注释、处理指令(如 <?xml version=?>)与 CDATA 段在格式化时原样保留,仅在压缩模式下去除标签间的纯空白。
数据会上传吗?
不会。解析与序列化全部在浏览器本地完成,数据不会离开当前设备。

使用步骤

  1. 粘贴或载入示例数据

    把 XML 粘进输入框即可开始。手头没有数据时点「示例」载入演示内容,先熟悉缩进效果再处理自己的文件。

  2. 点击格式化整理缩进

    按「格式化」得到两空格缩进、标签逐行对齐的版本,注释、CDATA 与命名空间声明都会原样保留。

  3. 按需压缩减小体积

    要把文档变成单行传输时点「压缩」按钮,仅去除标签之间的纯空白,文本内容本身不受任何影响。

  4. 按报错修正语法问题

    若存在未闭合标签等语法错误,下方红色提示会说明问题所在,修改输入后重新点击格式化即可。

  5. 复制结果投入使用

    点输出区右上角「复制」按钮拿到整理好的 XML,粘贴回配置文件、接口文档或测试夹具。

工具详细介绍

XML 广泛用于接口返回、RSS 订阅、构建配置与站点地图,机器拼接的源码常挤成一行、缩进混乱难以阅读。本工具调用浏览器原生 XML 解析器完成解析与序列化。格式化按层级加两空格缩进,压缩只删除标签间空白,注释与处理指令均会保留。

适合排查接口报文中标签是否闭合,或在团队评审前统一缩进风格。把臃肿的配置文件压成单行再传输也用得上。阅读 Android 布局或 Maven pom 时,还能快速理清层级。解析先于输出进行,文档格式错误会给出具体说明,相当于自带一次轻量校验。

原理与背景

XML 1.0 由 W3C 于 1998 年定稿,规范把「合格」分成两层。格式正确只要求单根元素、标签闭合、属性加引号这类结构规则;有效则要再通过 DTD 或 XSD 校验,前者是后者的前提。浏览器内建的 DOM 解析器只检查前者,元素该出现几次这类语义约束它并不关心。文本节点里的 < 与 & 必须写成 &lt; 与 &amp;。大段原样内容则包进 CDATA 段,免除逐字转义。本工具的格式化与压缩都不改动这些语法结构。

格式化做的是解析后重新序列化:解析器把文档读成 DOM 树,序列化器再按层级输出。属性引号风格、空标签写法这类细节会被规范化,信息不变而字节不同。空白是否承载语义由 xml:space 属性决定,默认模式下标签之间的缩进只是排版噪音。确有逐字保留空格需求的内容,标准做法是在元素上声明 xml:space="preserve"。一行式的 RSS、站点地图与 pom 配置,经这两步就能在给人读与给机器传之间切换。

典型使用场景

  1. RSS 与站点地图做体检

    订阅源与站点地图常由程序批量生成,一个未闭合标签就让整个源失效。格式化一遍并按报错定位,比等用户反馈「抓不到文章」再查快得多。

  2. 整理导出的测试夹具

    从抓包工具或测试平台导出的 XML 缩进五花八门,统一格式化一遍再存进版本库。后续用例的 diff 就只反映数据变化,而不是排版抖动。

  3. 并排核对两份等价配置

    两份应当等价的配置总是对不上时,先各自格式化成相同缩进,再并排对照查看。缺失的节点、多余的层级与属性差异一眼可见,不用逐行眯眼找。

使用技巧

  • xmlns 命名空间声明与前缀标签原样保留,带命名空间的文档可直接格式化。
  • 先点「示例」看一遍标准输出,再对照自己的数据排查结构差异。
  • 压缩只删除标签之间的空白,文本节点内部的空格不会被改动。

注意事项

  • 报错只指出第一个问题

    DOM 解析遇到第一个错误就停下,未闭合标签修好之后可能紧接着暴露下一处。按提示逐个修复直到通过,不要以为全文档只有一处错。

  • 根元素只能有一个

    XML 要求全部内容都挂在一个根元素之下,粘贴多个并列节点会被直接判为格式错误。在外面套一层容器标签再处理,结构立即恢复合法。

  • 压缩救不了冗长的正文

    压缩只处理标签之间的空白,元素内部的长文本一字不动。指望压缩大幅减小体积多半会失望,真正有效的办法是精简节点与属性的数量。

相关工具