XML 转 JSON
即时将 XML 转换为格式化 JSON——处理嵌套元素和文本节点,100% 在浏览器中运行。
输入
输出
什么是 XML?
XML(可扩展标记语言)是一种标记语言,定义了以人类可读和机器可读的格式编码文档的规则。它使用标签(如 HTML)来定义元素、属性和层次结构。在 JSON 成为主导的 Web 数据格式之前,XML 广泛用于数据交换、配置文件、SOAP API 和文档格式。
XML 在许多遗留系统、企业应用程序、基于 SOAP 的 Web 服务、RSS/Atom 订阅源、SVG 图形和配置文件中仍然很重要。尽管与 JSON 相比冗长,但 XML 仍存在于许多生产系统和文件格式中,使 XML 转 JSON 成为常见需求。
XML 与 JSON
XML 和 JSON 以不同方式表示数据。XML 使用带属性的开放和关闭标签,而 JSON 使用键值对和数组。XML 可以在元素上有属性(JSON 原生无法表示)、混合内容(文本和子元素交错)和命名空间前缀。JSON 更简单、更紧凑,直接映射到 JavaScript 对象。
主要结构区别在于它们如何处理重复。在 XML 中,具有相同标签名的重复子元素表示数组。在 JSON 中,数组用方括号显式表示。此转换器检测重复元素名并自动将其转换为 JSON 数组。
何时将 XML 转换为 JSON
将 XML 转换为 JSON 在许多场景中有用:
- 现代化遗留 API。将 SOAP 或遗留 REST API 的 XML 响应转换为 JSON,用于现代 Web 应用程序。
- 配置迁移。将 XML 配置文件移至 JSON 格式,用于现代工具和框架。
- 数据处理。在期望 JSON 的 JavaScript 应用程序中处理 XML 数据订阅源(RSS、Atom)。
- 简化数据。当您只需要数据值时,去除 XML 的冗长和复杂性。
- 互操作性。在基于 XML 的系统(如 SOAP)和基于 JSON 的系统(如 REST API)之间架起桥梁。
如何将 XML 转换为 JSON
使用本工具将 XML 转换为 JSON 只需一秒钟,完全在浏览器中完成。请按以下步骤操作:
- 粘贴 XML。在输入框中输入有效的 XML。根元素及其所有子元素将被转换。
- 点击"转换"。解析器从 XML 构建 DOM 树,并递归将其转换为 JSON 对象。
- 复制或下载。点击"复制"将 JSON 复制到剪贴板,或"下载"将其保存为 .json 文件。
如果 XML 无效,解析器将报告描述问题的错误消息。修复 XML 并重试。
转换如何工作
转换器递归遍历 XML DOM 树。对于每个元素,它创建一个以子元素名为键的对象。如果多个子元素共享相同的标签名,它们会自动分组为 JSON 数组。纯文本元素(没有子元素的叶节点)转换为字符串值。混合内容(既有文本又有子元素)使用 #text 键表示文本部分。
请注意,XML 属性不会被转换——只处理元素内容。这保持 JSON 输出干净简单。如果需要属性,请考虑预处理 XML 将属性转换为子元素。此外,标签名中的命名空间前缀在 JSON 键中原样保留,因此 <ns:foo> 在 JSON 中变为 "ns:foo"。
这个 XML 转 JSON 转换器免费吗?
是的,完全免费,无需注册,除设备内存外无任何限制,无需上传。
XML 属性会被转换吗?
不会。此转换器只处理元素内容,不处理属性。这保持 JSON 输出干净。如果需要属性,请在 XML 中将属性转换为子元素。
重复元素如何处理?
如果多个子元素共享相同的标签名,它们会自动分组为 JSON 数组。单个子元素成为对象属性。
我的数据会被上传吗?
不会,所有转换均在本地进行。您的 XML 数据永远不会离开浏览器。