将 XML 转换为 JSON 以及将 JSON 转换为 XML

在本教程中,我将向您展示将 XML 转换为 JSON 的方法,反之亦然:将 JSON 转换为 XML。您还知道如何读取 XML/JSON 文件并将数据转换为 JSON/XML 文件。

org.json 概述

org.json包支持 JSON 编码器/解码器。它还包括在 JSON 和 XML、HTTP 标头、Cookie 和 CDL 之间进行转换的功能。

在使用这个库之前,我们需要将其添加到我们的项目中。
– 依赖关系:

<dependency>
  <groupId>org.json</groupId>
  <artifactId>json</artifactId>
  <version>20190722</version>
</dependency>

– 或外部 Jar:json-20190722.jar

然后我们导入org.json.JSONObject和org.json.XML,代码如下:

import org.json.JSONObject
import org.json.XML

将 XML 转换为 JSON

XML 字符串到 JSON

有 2 个步骤:

  1. 使用函数从 XML 字符串中XML.toJSONObject()检索JSONObject

  2. 使用JSONObject.toString()方法获取 JSON 字符串JSONObject

package com.bezkoder.kotlin.xmljson

import org.json.JSONObject
import org.json.XML

fun main(args: Array<String>) {
  val PRETTY_PRINT_INDENT_FACTOR = 2

  val xmlStr = """
  	<Author>
	   <address>
	      <street>Internet Broadline</street>
	      <postcode>123456</postcode>
	   </address>
	   <name>bezkoder</name>
	   <age>26</age>
	</Author>
  """

  val jsonObj = XML.toJSONObject(xmlStr)
  val jsonPrettyPrintString = jsonObj.toString(PRETTY_PRINT_INDENT_FACTOR)

  println(jsonPrettyPrintString)
}

输出:

{"Author": {
  "address": {
    "street": "Internet Broadline",
    "postcode": 123456
  },
  "name": "bezkoder",
  "age": 26
}}

XML 文件到 JSON 文件

在以下人员的帮助下java.io.File:

  1. 使用读取 XML 字符串File.readText()

  2. 将 XML 字符串转换为JSONObject使用XML.toJSONObject()

  3. 使用JSONObject.toString()方法获取 JSON 字符串JSONObject

  4. 使用以下命令将 JSON 字符串写入 JSON 文件File.writeText()

package com.bezkoder.kotlin.xmljson

import java.io.File
import org.json.JSONObject
import org.json.XML

fun main(args: Array<String>) {
  val PRETTY_PRINT_INDENT_FACTOR = 2
  
  val xmlFile = System.getProperty("user.dir") + "\\bezkoder.xml"

  val xmlStr = File(xmlFile).readText()
  val jsonObj = XML.toJSONObject(xmlStr)

  val jsonFile = System.getProperty("user.dir") + "\\output.json"
  File(jsonFile).writeText(jsonObj.toString(PRETTY_PRINT_INDENT_FACTOR))
}

输出.json文件:

{"Author": {
  "address": {
    "street": "Internet Broadline",
    "postcode": 123456
  },
  "name": "bezkoder",
  "age": 26
}}

将 JSON 转换为 XML

JSON 字符串到 XML

有 2 个步骤:

  1. 使用构造函数方法JSONObject从 JSON 字符串创建JSONObject()

  2. 使用XML.toString()方法获取 XML 字符串JSONObject

package com.bezkoder.kotlin.xmljson

import org.json.JSONObject
import org.json.XML

fun main(args: Array<String>) {
  val jsonStr = """
	{
	  "Author": {
	    "address": {
	      "street": "Internet Broadline",
	      "postcode": 123456
	    },
	    "name": "bezkoder",
	    "age": 26
	  }
	}
  """

  val json = JSONObject(jsonStr)
  val xml = XML.toString(json)

  println(xml)
}

输出:

<Author><address><street>Internet Broadline</street><postcode>123456</postcode></address><name>bezkoder</name><age>26</age></Author>

JSON 文件到 XML 文件

在以下人员的帮助下java.io.File:

  1. 使用从文件中读取 JSON 字符串File.readText()

  2. JSONObject使用JSONObject()构造函数方法从 JSON 字符串获取

  3. 使用XML.toString()方法获取 XML 字符串JSONObject

  4. 使用以下命令将 XML 字符串写入 XML 文件File.writeText()

package com.bezkoder.kotlin.xmljson

import java.io.File
import org.json.JSONObject
import org.json.XML

fun main(args: Array<String>) {
  val jsonFile = System.getProperty("user.dir") + "\\bezkoder.json"

  val jsonStr = File(jsonFile).readText()
  val jsonObj = JSONObject(jsonStr)

  val xmlFile = System.getProperty("user.dir") + "\\output.xml"
  File(xmlFile).writeText(XML.toString(jsonObj))
}

输出.xml文件:

<Author><address><street>Internet Broadline</street><postcode>123456</postcode></address><name>bezkoder</name><age>26</age></Author>

xml-to-json-output-xml-文件


文章来源地址https://www.toymoban.com/article/486.html

到此这篇关于将 XML 转换为 JSON 以及将 JSON 转换为 XML的文章就介绍到这了,更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

原文地址:https://www.toymoban.com/article/486.html

如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 【工具】XML和JSON互相转换

    2024年02月12日
    浏览(6)
  • 数据转换篇---json to xml格式

    数据转换篇---json to xml格式

    2024年02月13日
    浏览(6)
  • C# XML 的读写以及和JSON对比

    通过我们进行跨平台传输,我们需要把某一个平台特有的数据类型转化为一种通用的数据类型序列化和反序列化 通用形式有两种: 《1》JSON:是一种以键值形式组成 《2》XML:可扩展标记语言 XML文件格式要求: 《1》头部需要有XML标记; 《2》每一个XML文件有且只有一个 《

    2024年02月14日
    浏览(7)
  • 使用Pydantic将Python对象转换为其他数据格式,例如JSON、XML、YAML

    更多文章:技数未来 Pydantic是一个在Python中的数据验证和解析库。它可以将Python对象转换成其他数据格式,如JSON、XML和YAML。在使用Pydantic之前,我们需要进行一些准备工作: 1. 安装Python和pip:确保你的计算机上安装了Python以及pip包管理器。 2. 创建虚拟环境(可选):建议使

    2024年02月15日
    浏览(30)
  • 目标检测实例分割数据集转换:从XML和JSON到YOLOv8(txt)

            如果大家想要了解关于yolov8的其他任务和相关内容可以点击这个链接,我这边整理了许多其他任务的说明博文,后续也会持续更新,包括yolov8模型优化、sam等等的相关内容。 YOLOv8(附带各种任务详细说明链接) 源码下载地址: XMLJSON 目标检测、实例分割标签转换

    2024年02月03日
    浏览(7)
  • 【mybatis-plus实体类复杂对象字段json自动相互转换,以及自定义字段类型解析器】

    引言: mybatis-plus集合对象字段json如何自动进行相互的转换? 怎样在使用mybatis-plus操作数据表的时候自动对实体类属性进行自动解析? 我们平时在做开发的时候,会遇到一个字段保存json串的情况。一般情况下mybatis-plus在做插入/更新之前将对象手动转换成json串,查询要用的时

    2023年04月13日
    浏览(5)
  • RSA加密,公钥、私钥的生成,前端使用公钥加密,JSEncrypt返回值为false的原因以及解决方法,XML转换Pkcs1、8

    RSA加密,公钥、私钥的生成,前端使用公钥加密,JSEncrypt返回值为false的原因以及解决方法,XML转换Pkcs1、8

    非对称加密算法,两个且不同的Key,一个公开,一个私密,公开加密,私密解密。 特点: 原文短,加密后密文长 生成相对较慢 安全性超强 我们使用.net进行生成公钥、私钥。 使用RSA.ToXmlString(Boolean) 方法生成公钥以及私钥,方法中接收一个参数, true  表示同时包含 RSA 公钥

    2024年01月21日
    浏览(36)
  • Python可视化学习——使用JSON进行数据转换、pyecharts模块调用以及可视化案例的介绍(可视化案例数据暂无),柱状图及动态柱状图的构建

    Python可视化学习——使用JSON进行数据转换、pyecharts模块调用以及可视化案例的介绍(可视化案例数据暂无),柱状图及动态柱状图的构建

    可视化效果一:2020年印美日新冠累计确诊人数 2020年是新冠疫情爆发的一年,随着疫情的爆发,国内外确诊人数成了大家关心的热点,相信大家都有看过类似的疫情报告.本案例对印度美国日本三个国家确诊人数的进行了可视化处理,形成了可视化的疫情确诊人数报告.  可视

    2024年02月01日
    浏览(31)
  • xml转json

    xml转json

    初始 xml 格式如下: 上述转成 json 格式就是: 但是 java 不止一个版本,我们需要的格式就如下: 如果我们要做到上诉 json 所示,需要 xml 格式为如下,但是有时候数据就只有单个的情况下,我们格式转换就有问题 问题:就是我们不知道 xml 中的元素是单个元素还是一个数组形

    2024年02月10日
    浏览(7)
  • java xml转json

    java xml转json 技术博客 http://idea.coderyj.com/ 最近在对接海康摄像头不支持json 返回的数据是xml尝试了各种方法,所以来总结一下 1.得到xml数据 2.java 将xml转json 依赖包 上代码 ps new ByteArrayInputStream(xmlString.getBytes(\\\"UTF-8\\\")) 一定要先转换为 utf8 才可以不然会直接失败

    2024年02月10日
    浏览(8)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包