> xml | json | 转换 <

// 即时在XML和JSON数据格式之间转换

[双向转换]

XML↔JSON 转换

一键将XML转换为JSON或将JSON转换为XML。完全双向支持。

[验证]

语法检查

自动验证XML和JSON语法。对格式错误的输入提供清晰的错误消息。

[免费]

属性支持

处理XML属性、嵌套元素、CDATA部分和作为数组的重复元素。

// 关于XML转JSON转换

工作原理:

使用浏览器原生DOMParser API解析XML,并递归遍历构建JSON对象。XML属性以'@'为前缀,文本内容在与子元素混合时使用'#text',重复的同级元素自动分组为数组。JSON到XML的反向转换遵循相同的约定。

示例:

<book id="1"><title>你好</title></book> → {"book":{"@id":"1","title":"你好"}}

常见用途:

  • >将SOAP/XML API响应转换为JSON
  • >将XML配置文件迁移到JSON
  • >为Web应用转换XML数据源
  • >将JSON负载转换为遗留系统的XML
  • >分析和检查复杂的XML结构

>> 常见问题

Q: XML和JSON有什么区别?

A: XML使用标签和属性按W3C标准层次化地组织数据。JSON使用RFC 8259定义的键值对。JSON更紧凑且在JavaScript中原生支持,而XML支持属性、命名空间和模式。

Q: XML属性如何映射到JSON?

A: XML属性被转换为带'@'前缀的JSON属性。例如,<item id="1">在JSON输出中变为{"@id": "1"}。

Q: 嵌套和重复元素如何处理?

A: 嵌套的XML元素变为嵌套的JSON对象。当多个同级元素共享相同的标签名时,它们自动分组为JSON数组。

Q: CDATA如何处理?

A: XML中的CDATA部分被视为文本内容。CDATA包装器被移除,内容作为普通字符串值包含。

Q: 支持XML命名空间吗?

A: 命名空间前缀在元素和属性名称中按原样保留。命名空间声明也使用'@'前缀约定保留。

// 其他语言