java实现xmltojson
时间: 2023-10-27 14:21:20 浏览: 53
Java中有很多第三方库可以将XML转换为JSON,其中比较常用的是Jackson和JSONObject。下面分别介绍这两种方法的实现。
1. 使用Jackson
首先,需要引入Jackson的依赖:
```
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.12.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.12.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.1</version>
</dependency>
```
然后,我们可以编写以下代码:
```
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
public class XmlToJson {
public static void main(String[] args) throws IOException {
String xml = "<root><name>John</name><age>30</age></root>";
XmlMapper xmlMapper = new XmlMapper();
JsonNode node = xmlMapper.readTree(xml.getBytes());
ObjectMapper jsonMapper = new ObjectMapper();
String json = jsonMapper.writeValueAsString(node);
System.out.println(json);
}
}
```
在上面的代码中,我们首先定义了一个XML字符串,然后使用XmlMapper将其转换为JsonNode对象,最后使用ObjectMapper将JsonNode对象转换为JSON字符串。
2. 使用JSONObject
如果不想使用Jackson,我们也可以使用Java标准库中的JSONObject来实现XML到JSON的转换。
以下是一个示例代码:
```
import org.json.JSONArray;
import org.json.JSONObject;
import org.json.XML;
public class XmlToJson {
public static void main(String[] args) {
String xml = "<root><name>John</name><age>30</age></root>";
JSONObject json = XML.toJSONObject(xml);
System.out.println(json.toString());
}
}
```
在上面的代码中,我们首先定义了一个XML字符串,然后使用XML类中的toJSONObject方法将其转换为JSONObject对象,最后使用toString方法将JSONObject对象转换为JSON字符串。