XML 转 JSON

转换器

用浏览器原生 DOMParser 把 XML 解析为 JSON,保留属性与命名空间,适合把 SOAP 响应、RSS 与 SVG 元数据喂给前端组件,免装解析库。属性与文本会分开保留,重复元素合并为数组以免丢失同名字段。命名空间会连同前缀一起注明,便于判断节点归属。转换结果可一键复制。

输入 → 输出
XML输入
JSON输出

关于 XML 转 JSON

XML 转 JSON 工具基于 DOMParser API 在浏览器本地将 XML 文档解析并转换为 JSON 格式。合理处理 XML 属性(添加 @ 前缀区分属性与子元素)、文本节点(使用 #text 键名)、命名空间前缀和重复元素(自动转为数组)。支持 CDATA 区块、处理指令、注释和 XML 声明的可选保留,可选择是否去除命名空间前缀。转换最值得注意的坑在于「重复元素」:同一个父节点下出现多次的同名子元素,会被收集成数组,而只出现一次时则是普通对象——同一份 XML 在不同数据下可能结构不同,消费端代码要对这两种情况都做好兼容。适用于将 SOAP 接口响应、RSS 订阅源、Atom Feed、Android 布局文件和旧系统 XML 配置迁移为现代 JSON 格式。支持自定义属性前缀符号(默认 @)和文本节点键名(默认 #text)。例如把 <user><id>1</id></user> 转成 {"user":{"id":"1"}},属性与子节点会按规则映射为对象字段。

使用方法

  1. 打开「XML 转 JSON」
  2. 选择源格式与目标格式
  3. 根据需要调整输出选项
  4. 点击「转换」按钮,结果实时显示
  5. 复制或导出结果

使用场景

  • 消费 SOAP 响应 — 把 SOAP 接口返回的 XML 转 JSON,让前端用 JSON.parse 直接处理。
  • 解析 RSS/Atom — 将订阅源的 XML 转成 JSON,方便提取标题、链接、时间等字段。
  • 迁移老系统 — 把遗留系统的 XML 数据转 JSON 后导入新的 JSON 化服务。
  • 配置读取 — 将 XML 配置转 JSON,避免在前端引入笨重的 XML 解析库。
  • 数据分析 — 转成 JSON 后用 jq、JSONPath 等工具做查询和统计。
  • SVG 动态渲染 — 把 SVG 的 XML 标记转成 JS 对象,供 React/Vue 组件动态渲染。

常见问题

XML 属性会丢失吗?

不会。属性通常会映射成带特定前缀(如 @ 或 $)的键,与子元素区分开,确保信息完整。

重复元素怎么处理?

同名的重复子元素会被收集成 JSON 数组;只出现一次的元素则是普通对象,符合直觉,但消费方需对两种情况都兼容。

命名空间会怎样?

命名空间前缀通常会保留在键名中(如 ns:tag)。如果不需要,可在转换后手动清理或使用去前缀选项。

混合内容(文本+子元素)呢?

元素同时含文本和子节点时,文本会放进一个专用键(如 #text),子元素照常映射。

为什么 XML 根节点是数组?

因为 XML 只允许一个根节点而 JSON 数组表达的是多个并列内容,多文档或带包裹结构时会出现数组,可开启单元素降维选项。

想反向转换?

请使用本站的「JSON 转 XML」工具。

广告