XML转JSON
在你的设备上运行 · 你的文件从不离开你的设备。
拖入.xml文件,或者粘贴接口、订阅源、配置文件里的XML,得到可以直接使用的JSON。文档由浏览器自带的XML解析器读取,只要格式规范就能转;格式有问题的文件会告诉你出错的行和列。
映射固定且可逆:每个元素变成一个键;同名的兄弟元素变成数组;属性以@开头的键保留(id="3"变成"@id": "3");元素既有文本又有子元素或属性时,文本放在"#text"下。只有文本的元素直接变成那个值。
打开类型识别后,12、true这样的文本或空元素会变成数字、布尔值或null;关掉则全部保持文本。带命名空间的名字(soap:Body)按原样保留。下载前可以预览前200行。
如何XML转JSON
- 拖入XML文件,或者把XML粘贴到文本框。
- 决定要不要识别数字、布尔值和空元素的类型。
- 点击“转换为JSON”,看一下预览。
- 下载.json。
支持的格式与限制
- 输入
- XML(.xml)——文件或粘贴的文本,UTF-8
- 输出
- JSON,带缩进,UTF-8
- 属性
- 以"@name"键保留
- 重复元素
- 变成数组
- 运行位置
- 在浏览器本地完成,不上传
不适用于: 格式不规范的XML(标签没闭合、HTML网页)——解析器会报告第一个问题,而不是瞎猜。
常见问题
- 我的文件会上传到服务器吗?
- 不会。转换完全在你的浏览器里完成,用的是你自己设备的算力。文件不会离开你的电脑或手机——所以页面加载完成后,断网也照样能用。
- 属性和混合内容怎么处理?
- 属性变成以@开头的键,<item id="3">得到"@id": "3"。元素既有文本又有属性或子元素时,文本存在"#text"下;只有文本的元素直接变成那段文本。
- 为什么有的元素是对象,重复的却是数组?
- 在父元素下只出现一次的元素变成对象(或值);两个及以上同名的兄弟元素变成数组。这样和文档一一对应,所以只有一项的列表是一个对象——代码里两种情况都需要数组的话,在接收端包一下。
- JSON的最外层是什么样?
- 一个以根元素命名的键,里面装着全部内容——<records>…</records>变成{"records": {...}}。保留根元素的名字,JSON转XML工具才能重建同样的文档。
表格与数据中的更多工具
相关工具