基于浏览器 DOMParser 的良构校验;支持 Pretty / Minify、命名空间、CDATA、处理指令与注释策略。免费在线工具,无需登录、无需注册。
本地运行个人数据安全
Loading Tool Engine
使用说明与技术 FAQ
分步操作与原理说明使用说明
- 粘贴或上传 UTF-8 文本;若含 BOM,工具会在解析前剥离常见 BOM 前缀。
- 选择 `美化`:按层级缩进输出,便于 Code Review 与 diff;选择 `压缩`:生成更接近线上传输体积的单行结果。
- 缩进宽度(2/4 空格)仅影响美化模式;压缩模式忽略缩进设置。
- 按需切换「保留注释」:关闭后美化输出会跳过注释节点,压缩模式会从 DOM 中移除注释再序列化。
- 出现红色解析错误时,先对照浏览器提示修正标签闭合、非法字符或未转义的 `&` 等良构问题。
- 含命名空间与前缀(如 `soap:`、`xmlns:`)的文档由浏览器 XML 引擎解析,输出会尽量保留前缀与属性声明。
- CDATA 区块用于避免转义大量文本;格式化后仍会以 `<![CDATA[...]]>` 形式呈现。
- 大文档会占用较多内存;超长单行可先在外部换行再粘贴,或分段处理以降低卡顿。
- 与 XSD/DTD 的「有效性验证」不同:本页只做良构(well‑formed)检查,不做 schema 断言。
- 处理含密钥、PII 的响应体后,及时清空输入并关闭标签页,避免他人复用本机会话。
- 先阅读页面标题与简介,确认当前工具覆盖的场景与你的任务一致(避免用错工具导致理解偏差)。
- 在输入区粘贴或键入数据;若页面提供「示例 / 模板」,可先载入再替换为自己的内容以熟悉输出格式。
相关技术知识
- 解析链路:`DOMParser.parseFromString(..., "application/xml")` → 检测 `parsererror` → 自定义缩进遍历 DOM → 文本/属性转义输出。
- 压缩输出使用 `XMLSerializer.serializeToString`,并在标签间去除多余空白;可能与手写格式的空格略有差异但语义等价(在解析器接受范围内)。
- 浏览器不会对任意 XSD 做自动校验;若需 schema 验证请在构建链路或专用校验器中完成。
- 实体引用:解析阶段会按 XML 规则展开预定义实体;自定义实体若未声明可能导致解析失败。
- 处理指令(如 `xml-stylesheet`)在美化结果中单独成行;是否保留取决于原文档结构。
- 混合内容(元素间夹杂文本与子元素)会按子节点顺序输出,避免早期正则方案错排文本节点。
- 与 HTML 解析不同:`application/xml` 模式对未闭合标签、隐式 tbody 等不宽容。
- 性能:复杂度大致随节点数线性增长;极端深度嵌套可能触达引擎或栈限制。
- 安全:解析恶意膨胀实体或「亿字节」攻击向量时,浏览器仍可能消耗大量资源——勿对不可信输入做无限制自动化处理。
- 互操作:若需与后端 libxml/Java JAXB 等对齐,请再跑一遍对方工具链的校验以排除方言差异。
- 本类工具的核心解析与计算在浏览器端执行,默认不把原始业务载荷持久化到本站服务器(具体以页面隐私说明为准)。
- 处理管线通常为:读取输入 → 词法/语法或结构化解析 → 规则变换 → 格式化输出;任一步失败都会尽量给出可定位错误信息。