← 返回工具箱

XML 格式化

XML FORMAT · 代码格式化

XML 美化缩进与压缩,自动校验标签配对并定位错误;声明、注释、CDATA 都能正确处理。

XML 输入
结果

>_ 使用指南 · GUIDE

粘贴 XML,美化缩进(每个子元素独立一行、层级清晰)或压缩成单行(减小体积便于传输),实时完成。解析时自动校验标签配对:少个闭合标签、标签名大小写不一致,会定位到出错位置,不用肉眼数标签。

声明头、注释、CDATA 段都能正确处理——CDATA 里的内容原样保留不会被误改。对接老系统接口(很多政企、银行接口仍是 XML)、看 Android 布局文件、处理 RSS/Soap 报文时顺手一贴。本地解析,零上传。

>_ 常见问题 · FAQ

Q1 · XML 和 JSON 有什么区别?现在还用 XML 吗?

两者都是结构化数据格式:JSON 轻量、是现代 Web API 的主流;XML 表达能力更强(属性、命名空间、混合内容、Schema 校验),在政企接口、 Soap 服务、Android 布局、Office 文档(docx/xlsx 本质是 XML)、RSS 等领域仍是标配。不是谁取代谁,是场景分工。

Q2 · 提示标签不配对,怎么快速定位?

常见错误:开始/结束标签名大小写不一致(<Name> 与 </name>)、自闭合写法错误(应为 <br/>)、嵌套顺序交叉(<a><b></a></b>)。本工具校验时会指出出错位置,照着改;结构复杂的文档先格式化展开,层级清楚后错误更易发现。

Q3 · CDATA 是什么?格式化会动它里面的内容吗?

CDATA(<![CDATA[...]]>)让其中内容按纯文本处理,里面的 <、& 不需要转义——常用于包裹代码片段、含特殊符号的报文。本工具的格式化与压缩都会原样保留 CDATA 内容,不会展开或改动其中的字符。

Q4 · XML 的属性和子元素有什么区别?<a b="1"> 和 <a><b>1</b></a> 一样吗?

语义上都可表达「a 有个 b 值为 1」,但约定不同:属性适合简短的元数据(id、type),子元素适合有结构、可重复的内容。属性不能重复、不能有子结构。维护别人的 XML 时保持原有风格,别把属性改成元素(很多解析映射按属性名取值)。

Q5 · 压缩后的 XML 为什么有时反而变大?

XML 大头通常在标签与缩进空白,压缩方向去掉缩进即可显著减小。但若文档本身没有缩进(本来就是一行),再压缩不会更小;CDATA 与注释内容按规范原样保留。要更小体积应考虑整体 gzip 传输,而不是纠结 XML 层面。

嵌入代码

把下面的代码复制到你的网页,即可将本工具嵌入为 iframe(自动隐藏导航与页脚)。

高度px
此工具在你的浏览器本地运行,输入内容不会上传。按 Ctrl K 可随时切换到其他工具。