Gson Java如何处理XML与JSON转换

avatar
作者
猴君
阅读量:0

Gson 本身不支持将 XML 转换为 JSON,也不支持将 JSON 转换为 XML。但是,您可以使用其他库来实现这些转换,例如 Jackson 或 XStream。下面是如何使用这些库进行转换的示例。

  1. 使用 Jackson 将 XML 转换为 JSON:

首先,您需要添加 Jackson XML 和 JSON 依赖项到您的项目中。对于 Maven 项目,将以下依赖项添加到 pom.xml 文件中:

<dependency>     <groupId>com.fasterxml.jackson.dataformat</groupId>     <artifactId>jackson-dataformat-xml</artifactId>     <version>2.13.0</version> </dependency> <dependency>     <groupId>com.fasterxml.jackson.core</groupId>     <artifactId>jackson-databind</artifactId>     <version>2.13.0</version> </dependency> 

然后,您可以使用以下代码将 XML 转换为 JSON 字符串:

import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.xml.XmlMapper;  import java.io.IOException;  public class XmlToJsonExample {     public static void main(String[] args) throws IOException {         String xml = "<root><element>value</element></root>";          XmlMapper xmlMapper = new XmlMapper();         ObjectMapper jsonMapper = new ObjectMapper();          MyClass myObject = xmlMapper.readValue(xml, MyClass.class);         String jsonString = jsonMapper.writeValueAsString(myObject);          System.out.println(jsonString);     } }  class MyClass {     private String element;      // Getter and Setter methods } 
  1. 使用 Jackson 将 JSON 转换为 XML:

同样,您需要添加 Jackson XML 和 JSON 依赖项到您的项目中。然后,您可以使用以下代码将 JSON 字符串转换为 XML 字符串:

import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.xml.XmlMapper;  import java.io.IOException;  public class JsonToXmlExample {     public static void main(String[] args) throws IOException {         String json = "{\"element\":\"value\"}";          ObjectMapper jsonMapper = new ObjectMapper();         XmlMapper xmlMapper = new XmlMapper();          MyClass myObject = jsonMapper.readValue(json, MyClass.class);         String xmlString = xmlMapper.writeValueAsString(myObject);          System.out.println(xmlString);     } }  class MyClass {     private String element;      // Getter and Setter methods } 

请注意,这些示例假设您已经定义了一个与 XML 结构匹配的 Java 类。您需要为 XML 中的每个元素创建一个相应的 Java 类,并为每个元素提供 getter 和 setter 方法。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!