如何将xml转换为JSON? 最简单高效的xml转json方法分享

使用Python的xmltodict库可高效将XML转为JSON,步骤为安装库、解析XML为字典、再转JSON输出;Node.js可用fast-xml-parser;临时需求推荐FreeFormatter等在线工具,注意属性处理、数组生成与编码一致性。

将XML转换为JSON在数据处理、接口对接和配置迁移中非常常见。最简单高效的方法是使用现成的工具或编程语言中的成熟库,避免手动解析带来的复杂性和错误。

使用Python的xmltodict库(推荐)

Python有一个轻量且高效的库叫xmltodict,它可以将XML解析为Python字典,然后用json库直接转成JSON格式。

操作步骤:

  • 安装库:pip install xmltodict
  • 读取XML字符串或文件
  • 用xmltodict.parse() 转为字典
  • 用json.dumps() 输出JSON

示例代码:

import xmltodict
import json

xml_str = '''

  张三
  25
  北京

'''

data = xmltodict.parse(xml_str)
json_str = json.dumps(data, indent=2, ensure_ascii=False)
print(json_str)

输出结果:

{
  "person": {
    "name": "张三",
    "age": "25",
    "city": "北京"
  }
}

在线转换工具(零代码)

如果你只是偶尔需要转换,不想写代码,可以使用在线工具快速完成。

推荐几个稳定好用的网站:

  • FreeFormatter
  • CodeBeautify
  • Convertio

这些工具支持粘贴XML或上传文件,一键转JSON,还提供格式化和验证功能,适合非技术人员使用。

Node.js环境下的转换方法

如果你在前端或Node.js项目中处理XML,可以使用fast-xml-parser库,性能优秀,支持多种选项。

  • 安装:npm install fast-xml-parser
  • 解析XML并输出JSON

示例代码:

const { XMLParser } = require("fast-xml-parser");

const xmlData = `

  JavaScript高级程序设计
  Nicholas

`;

const parser = new XMLParser();
const jsonObj = parser.parse(xmlData);
console.log(JSON.stringify(jsonObj, null, 2));

注意事项

XML和JSON结构不完全对等,转换时注意以下几点:

  • XML属性通常会以@attributes形式保留在JSON中
  • 单个子节点和多个同名子节点可能影响数组生成
  • 空节点或文本混合内容需特别处理
  • 中文字符要确保编码一致,避免乱码

基本上就这些。选择哪种方式取决于你的使用场景:写脚本用Python或Node.js,临时转换用在线工具,简单又高效。