AZ Tools

JSON ↔ XML 转换

转换

使用 `fast-xml-parser` 进行 JSON ↔ XML 双向转换。JSON 对象映射为嵌套元素;数组重复父元素。JSON 端的属性带 `@_` 前缀(`<book id="1">…</book>` 变为 `{ "book": { "@_id": 1, … } }`)。全部在浏览器内运行 — 数据不会离开页面。

输出
<library>
  <name>AZ Tools</name>
  <books>
    <title>Hello</title>
    <year>2024</year>
  </books>
  <books>
    <title>World</title>
    <year>2025</year>
  </books>
</library>

使用方法

  1. 选择方向(JSON → XML 或 XML → JSON)。
  2. 把数据粘到输入框 — 结果实时更新。
  3. JSON → XML 时如果输入没有单一顶级键,设置根元素名。
  4. 点击 ↔ 反转方向 — 当前输出作为新输入。

常见问题

XML 属性在 JSON 里如何表示?
属性名前加 `@_`。`<book id="1">` 变成 `{ "@_id": 1 }`。前缀用于区分同名的子元素和属性。
重复的 XML 元素呢?
两个或以上同名兄弟元素变成 JSON 数组。只出现一次的保持为普通对象 — 解析器无法在只出现一次时判断它"应该"是数组。
命名空间、CDATA、注释如何处理?
命名空间原样保留在元素/属性名中。CDATA 内容以普通字符串返回。注释与处理指令在输出中被丢弃。
数字、布尔字符串会自动类型化吗?
会。`<year>2024</year>` 变 `"year": 2024`,`<active>true</active>` 变 `"active": true`。看起来像数字的字符串也可能被转换 — 想保留请在源中明确加引号。

相关工具