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

畫卷琴夢
发布: 2025-11-22 15:17:02
原创
579人浏览过
使用Python的xmltodict库可高效将XML转为JSON,步骤为安装库、解析XML为字典、再转JSON输出;Node.js可用fast-xml-parser;临时需求推荐FreeFormatter等在线工具,注意属性处理、数组生成与编码一致性。

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

将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 = '''
<person>
  <name>张三</name>
  <age>25</age>
  <city>北京</city>
</person>
'''

data = xmltodict.parse(xml_str)
json_str = json.dumps(data, indent=2, ensure_ascii=False)
print(json_str)
登录后复制

输出结果:

{
  "person": {
    "name": "张三",
    "age": "25",
    "city": "北京"
  }
}
登录后复制

在线转换工具(零代码)

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

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

LobeHub
LobeHub

LobeChat brings you the best user experience of ChatGPT, OLLaMA, Gemini, Claude

LobeHub 201
查看详情 LobeHub

这些工具支持粘贴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 = `
<book>
  <title>JavaScript高级程序设计</title>
  <author>Nicholas</author>
</book>
`;

const parser = new XMLParser();
const jsonObj = parser.parse(xmlData);
console.log(JSON.stringify(jsonObj, null, 2));
登录后复制

注意事项

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

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

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

以上就是如何将xml转换为JSON? 最简单高效的xml转json方法分享的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号