反馈途径·目前大家有任务反馈可以直接发我邮箱:lyfs814@163.com陆续上线高价值工具,敬请期待! 欢迎使用蜗牛工具箱·新工具持续上线中,欢迎收藏关注。如有建议欢迎反馈! 反馈途径·目前大家有任务反馈可以直接发我邮箱:lyfs814@163.com陆续上线高价值工具,敬请期待! 欢迎使用蜗牛工具箱·新工具持续上线中,欢迎收藏关注。如有建议欢迎反馈!
v1.0 · 已上线中英双语纯客户端

XML 格式化XML Formatter

把压缩的 XML 一键美化、校验、剥离注释,调试 SOAP、阅读 RSS / Atom、查看 SVG / Maven POM 更快。文件全程不上传。

本周使用—·收藏963·版本v1.0.0·最后更新3 天前·完全免费
缩进
·字符288
输入UTF-8 · 1 行
输出缩进 2 · UTF-8
<!-- 美化结果会显示在这里… -->
·
执行

工具介绍

3 段详细说明

XML 格式化是面向开发者的一站式 XML 处理工具,集美化、压缩、剥离注释、轻量 XSD 校验四大功能于一体。你可以直接把 SOAP / RSS / SVG / Maven POM 单行或乱码 XML 粘贴进来,一键得到层级清晰的格式化结果。

所有解析都在浏览器内存中完成,文件不上传任何服务器。基于浏览器原生 DOMParser / XMLSerializer,零依赖、零打包,500 KB 以内解析几乎瞬时(< 100ms)。

相比 xmllint 等命令行工具,本工具无需安装、打开网页即用,适合临时调试接口、阅读 feed、跨设备同步等场景。支持 ⌘+↵ 快捷键执行、复制一键带走。

基础知识 · XML 语法

W3C XML 1.0 · 6 个核心概念

XML(Extensible Markup Language)是结构化的可扩展标记语言。按 W3C XML 1.0 规范定义,文档必须满足以下 6 个核心规则,缺一即非法:

1single root必须且只能有一个根元素
每个 XML 文档有且仅有一个顶层元素包裹所有内容(HTML 是特例,浏览器自动补 <html>)。多余根元素直接 not well-formed。
2close tags所有标签必须闭合
每个起始标签都要有匹配的结束标签 <a>…</a>,或者用自闭合 <br/>。HTML 那种 <br> 在 XML 里非法。
3case sensitive标签大小写敏感
<Root></Root> 和 <root></root> 是两个不同元素。约定上常用 lowerCamelCase 或 lower-kebab-case 命名。
4escape特殊字符必须转义
< 必须写 &lt;、& 必须写 &amp;,属性值内的 " 必须写 &quot;。大段特殊字符可用 <![CDATA[ … ]]> 包裹原样保留。
5attribute quote属性必须加引号
所有属性值必须用 " 或 ' 包起来:<a href="x"> 合法,<a href=x> 非法。属性值内的 <、& 同样需要转义。
6well-formed vs valid格式正确 vs 验证通过
「well-formed」= 满足上面 5 条语法规则(DOMParser 能解析);「valid」= 还需对照 DTD/XSD 验证元素/属性命名约束(需要 schema 校验工具,本工具的 XSD 面板只做轻量结构校验)。前者是基础,后者是进阶。
XPath 速记
在 XML 中按路径定位节点,推荐用 XPath(类 JSONPath),取代 getElementsByTagName 全文档扫描的笨办法:
/root/title —— 绝对路径,取根下 title。
//item[1] —— 文档任意位置 item 的第 1 个。
//item[@status='active'] —— 任意 item,属性 status 等于 active。
//*[@id='x']//price —— 递归取 id='x' 节点下所有层级的 price。
XML 解析错误信息中通常报告行号和列号,比 JSON 的字节偏移更直观(本工具的友好提示会自动给出精确位置并定位光标)。

使用说明

4 步快速入门
1
粘贴 XML
把待处理的 XML 文本贴到左侧输入框,或点击「示例」一键填充
2
选缩进
顶部工具栏切换 2 / 4 空格或 Tab,立即生效
3
点执行
点击「执行」或按 ⌘+↵,右侧立即显示美化结果,错误时给出红字提示
4
复制带走
点「复制」按钮一键复制结果,或直接 Ctrl/Cmd+C 选区复制

使用场景

5 个真实案例
01调试 SOAP 接口

粘贴 SOAP 响应 XML,一键美化查看 envelope / body / fault 结构,定位异常字段。

02阅读 RSS / Atom Feed

博客订阅源、新闻源通常是压缩 XML,点击示例填充,对照理解 item / channel / pubDate 结构。

03检查 Maven POM / build.xml

Java 项目 POM、Spring 配置、Ant build.xml 等粘贴检查语法正确性,提前发现依赖冲突。

04查看 SVG 路径

SVG 是 XML 的子集,美化后可读 path / circle / transform 的层级结构,方便改图。

05调试 Apple plist / Android manifest

iOS Info.plist、AndroidManifest.xml 都是 XML,美化对比不同构建产物的差异。

常见问题

10 个问答
XML 格式化是什么?有什么用?

把压缩成单行的 XML(如 SOAP / RSS / Maven POM 响应)转成多行缩进格式,方便阅读和调试。也支持反向压缩、行级错误定位等。

我的 XML 数据会上传到服务器吗?

不会。所有解析在浏览器内存中完成,输入内容不上传任何服务器。可断网使用、关闭网络后再打开仍能正常使用。

支持多大的 XML 文件?

建议 ≤ 5 MB。原生 DOMParser 在 500 KB 以内几乎瞬时(<100ms),2 MB 大约 200-500ms。M2 将引入流式解析支持更大文件。

错误位置如何定位?

XML 解析失败时会显示具体错误信息(行号 + 列号 + 原因),例如 Opening and ending tag mismatch at line 3。输入区红框会自动标出错误位置。

与 xmllint 等命令行工具的区别?

xmllint 需要安装 libxml 工具链;本工具无需安装、打开网页即可用,适合临时调试 SOAP / RSS / POM 等接口响应、复制粘贴场景。

移动端能用吗?

支持。移动端输入/输出自动垂直堆叠,操作按钮自适应布局。手机上可粘贴微信 / 飞书里收到的 XML,一键美化。

离线能用吗?

能。PWA 已上线,首次访问后浏览器会缓存所有资源,断网后仍可使用。M2 将发布桌面应用支持完全离线 + 系统集成。

XML 嵌套层级有限制吗?

无硬性限制。原生解析支持任意深度,但浏览器渲染层可能在大屏上对 100+ 层级做截断。极端场景(500+ 层)建议使用 XPath 查询工具。

支持 XSD / DTD 验证吗?

支持。点击工具栏「XSD 校验」展开面板,上传 .xsd 文件或粘贴 schema,再点「开始校验」即可。本工具做的是轻量结构校验:根元素名、子元素名、minOccurs / maxOccurs 出现次数,并不覆盖 XSD 1.0/1.1 的类型推导、union、list、attr 约束、引用等。如需完整校验,请使用 xmllint / Oxygen XML Editor。

输出结果可以一键复制吗?

可以。点击「复制」按钮即可把美化结果复制到剪贴板,支持 Ctrl/Cmd + C 直接复制输出区选中文本。

相关工具

开发者分类

数据来源

隐私优先
算法:基于浏览器原生 DOMParser / XMLSerializer,无任何第三方依赖。缩进格式化由原生 DOM 树节点序列化实现,无 WASM、无 polyfill。
隐私声明:所有解析均在浏览器内存完成,输入内容不上传任何服务器。本工具不记录任何输入、不埋任何分析点。可断网使用,关闭网络后再打开仍能正常使用。