JSON 转 XML 转换器
将 JSON 转换为格式良好的 XML,可配置根元素,通过“@_”键生成属性,数组生成重复元素,并可选 XML 声明。免费。
完全在浏览器中运行,您的数据不会被上传。
相关工具
查看全部什么是 JSON 转 XML?
将 JSON 文档转换为 XML。对象变为嵌套元素,数组变为同名的重复元素,以属性前缀(默认为 @_)开头的键变为 XML 属性,#text 变为元素文本。
如何使用 JSON 转 XML
- 将 JSON 粘贴到 JSON 输入框中,或使用加载示例或打开文件。
- 设置根元素(如果你的 JSON 已有唯一的顶层键,请将其清空)、顶层数组使用的数组项元素以及属性键前缀。
- 选择缩进,以及是否添加 XML 声明。
- XML 输出会随你的输入实时更新;可使用复制或下载。
示例
输入
{"@_id":"7","name":"Ada","tags":["a","b"]} 输出
<?xml version="1.0" encoding="UTF-8"?> <root id="7"> <name>Ada</name> <tags>a</tags> <tags>b</tags> </root>
何时使用 JSON 转 XML
适合把 JSON 数据提供给只支持 XML 的系统,如 SOAP 服务、类 RSS 的订阅源或旧式集成。XML 没有原生类型,因此数字和布尔值会变成纯文本;如果接收系统要求特定的 XSD,请对照检查元素顺序和名称。
JSON 转 XML 的工作原理
JSON 被解析后,每个键都会被净化为有效的 XML 名称(无效字符变为 _,以数字开头的名称会加上前导 _)。随后用 fast-xml-parser 的 XMLBuilder 序列化该对象:特殊字符会被转义(& → &),null 值变为空元素(<note/>),数组值会让元素按每一项重复一次,顶层数组会被包装为 <root><item>…</item></root>。
常见用例
- 向 SOAP 或 XML-RPC 端点发送 JSON 数据
- 根据 JSON 示例创建 XML 测试数据
- 把导出为 JSON 的配置转换为 XML
- 为只能导入 XML 的工具生成 XML
常见问题
如何创建 XML 属性?
在键前加上属性前缀(默认为 @_):{"@_id": "7"} 会在父元素上变成 id="7"。如果你的 JSON 使用 @ 或 $,请修改前缀。
数组会怎样处理?
"tags": ["a","b"] 会生成两个 <tags> 元素。顶层数组会被包装在根元素中,每个条目对应一个 <item>(可配置)。
可以省略根元素的包装吗?
可以——清空根元素即可。此时 JSON 必须是只有一个键的对象,该键会成为根元素。
推荐的下一步
JSON 格式化
在线格式化并美化 JSON,支持 2 空格、4 空格或制表符缩进,可按字母排序键,语法错误会精确提示行号和列号。完全在浏览器中运行。
SQL 格式化
为 MySQL、PostgreSQL、SQL Server、Oracle、BigQuery 等 16 种方言格式化 SQL 查询,可选关键字大小写和缩进。在浏览器中运行。
代码美化
在浏览器中一站式美化 14 种语言的代码,涵盖前端脚本、样式表、标记语言、数据格式、查询语言以及 PHP 和 Python,选择语言和缩进即可。
转义/反转义工具
一个工具搞定字符串转义与反转义:支持 JSON、JavaScript、HTML、XML、URL 组件、正则表达式、SQL 字面量、CSS 字符串和 Shell 参数。
虚拟数据生成器
生成逼真的虚拟测试数据:姓名、邮箱、电话、地址、公司和出生日期,支持 8 种区域。可导出 JSON、CSV 或 SQL INSERT,并可用种子重复生成。
JSON 压缩
移除 JSON 中所有无意义的空白,同时保持值、键顺序和大数字不变,并显示节省的体积。免费且在浏览器内运行。