> 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: 命名空间前缀在元素和属性名称中按原样保留。命名空间声明也使用'@'前缀约定保留。