XML格式化工具

在线 XML 格式化与校验工具,把 XML 文本按标签层级缩进美化,支持压缩、标签折叠,格式错误时提示行列位置,适合接口报文调试。

功能说明

本工具用于格式化或压缩 XML 文本。格式化模式会按层级缩进,使结构清晰易读;压缩模式会去除多余空白和换行,适合传输或存储。工具会同时显示 XML 中的节点总数,帮助您了解文档规模。

使用方法

计算原理

工具使用浏览器内置的 DOMParser 将 XML 文本解析为 DOM 树。解析成功后,通过递归遍历节点,根据节点层级生成缩进字符串。格式化输出时,每个元素标签、文本内容和注释都会单独成行,属性保持原有顺序。压缩模式则使用 XMLSerializer 将 DOM 序列化为紧凑字符串,自动去除多余空白。节点数统计的是所有元素节点的数量(不包括文本、注释等)。

注意事项

为什么我的 XML 解析报错,提示行列位置?

DOMParser 在遇到不符合 XML 规范的标签、属性或字符时会抛出解析错误。工具会提取错误信息中的行号和列号,帮助您定位问题。常见原因包括:标签未闭合、属性值未加引号、使用了非法字符(如 & 未转义为 &)等。请检查对应位置并修正后重试。

格式化后的 XML 和原文件内容是否完全一致?

格式化会重新排列空白和换行,但不会改变元素、属性、文本内容或注释。不过,如果原 XML 中有多余的空格或换行(例如文本节点中的空白),这些空白可能会被保留或调整,因此格式化后的文本可能与原文件在空白方面有差异,但语义不变。

压缩模式会删除所有空白吗?

压缩模式使用 XMLSerializer 序列化 DOM,会移除元素之间的空白和换行,但不会删除文本节点内部的空格(例如 John Doe 中的空格会保留)。这是为了保证文本内容的完整性。

节点数统计包含哪些内容?

节点数统计的是元素节点(即标签)的数量,不包括文本节点、注释、处理指令或文档节点。例如 会显示 2 个节点(root 和 child)。如果您需要统计所有类型节点,可以自行扩展。