Gson 本身不支持將 XML 轉換為 JSON,也不支持將 JSON 轉換為 XML。但是,您可以使用其他庫來實現這些轉換,例如 Jackson 或 XStream。下面是如何使用這些庫進行轉換的示例。
首先,您需要添加 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
}
同樣,您需要添加 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 方法。