素材阁

XML 格式化

XML 美化与压缩,标签不配对会明确报错,解析与缩进在浏览器本地完成,XML 内容不会上传。

下载 .xml

使用说明

把压缩或排版混乱的 XML 按两空格或四空格缩进美化,也能一键压缩成一行;自闭合标签、注释、CDATA 与 XML 声明都原样保留,标签不配对时会指出行号与最近打开的是哪个标签;解析全部在浏览器本地完成,内容不会上传。

  1. 把 XML 粘到左侧输入框,在顶部「缩进」里选 2 空格或 4 空格,再点「美化」输出按层级排好的结果。
  2. 美化时子节点按嵌套深度缩进,只含文本的元素会把开放标签、内容与结束标签排在同一行;<a /> 这类自闭合标签、<!-- 注释 -->、<![CDATA[ ... ]]> 与 <?xml ... ?> 声明都按原内容输出,不会被改写。
  3. 点「压缩成一行」去掉标签之间的换行与缩进,标签本身、注释与 CDATA 内容保持原样,适合塞进单行配置或字符串常量。
  4. 遇到标签不配对时,结果区上方的红框会给出「第 X 行:……」的中文提示,例如缺少 </div>、最近打开的是 <div>、或者出现多余的结束标签,按行号修正后重新点按钮。
  5. 点「复制」取走结果,或点「下载 .xml」保存文件;点「填入示例」可以先用一段带注释、CDATA 与自闭合标签的样例试手,点「清空」重新粘贴。

常见问题

为什么提示标签不配对?
XML 要求每个开始标签都有同名结束标签,且大小写完全一致。提示会指出出错行号,并告诉你最近打开的是哪个标签,常见原因是手写时漏了 </xxx>、把 <br> 当成 HTML 的自闭合写法,或大小写写成了 </Div>。改成 <br/> 或补全结束标签即可。
属性和文本里的空格会被改动吗?
引号内的属性值与文本内容不做任何改写,只把标签内部属性之间的连续空白合并成一个空格、并去掉 /> 前多余的空格。文本节点两端用于排版的空白会被去掉,正文中间的空格原样保留。
CDATA 里带尖括号会不会被当成标签?
不会。扫描器会先整体跳过 <![CDATA[ ... ]]> 段,里面的尖括号与 & 符号都不参与解析,缩进与压缩时该段作为一个整体输出。这也是在 XML 里放代码片段最稳妥的写法。

延伸阅读

相关工具