在開發過程中,經常會遇到需要把XML字符串轉換為JSON格式的需求。Java提供了多種方式來實現這種轉換,其中最常用的是利用第三方庫Jackson。
首先,在pom.xml文件中添加Jackson庫的依賴:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.12.2</version>
</dependency>
接下來,我們需要編寫代碼來實現XML字符串轉JSON格式的轉換:
import com.fasterxml.jackson.databind.ObjectMapper;
import org.json.JSONObject;
import org.json.XML;
public class XmlToJsonConverter {
public static String convert(String xmlString) throws Exception {
JSONObject jsonObject = XML.toJSONObject(xmlString);
ObjectMapper mapper = new ObjectMapper();
return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonObject);
}
}
這段代碼中,我們先使用JSONObject將XML字符串轉換為JSONObject對象,然后使用ObjectMapper將JSONObject對象轉換為JSON格式字符串,并使用writerWithDefaultPrettyPrinter方法實現格式化輸出。
最后,我們可以在程序中調用該方法來實現XML字符串轉JSON格式:
String xmlString = "<person><name>John</name><age>30</age></person>";
String jsonString = XmlToJsonConverter.convert(xmlString);
System.out.println(jsonString);
運行程序,輸出結果如下:
{
"person": {
"name": "John",
"age": 30
}
}
可以看到,XML字符串已經成功地轉換為JSON格式。