色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java xml json 互轉(zhuǎn)

傅智翔2年前8瀏覽0評論

Java是一種廣泛使用的編程語言,可以處理許多不同種類的數(shù)據(jù)格式。其中,XML和JSON是兩個常見的數(shù)據(jù)格式。在Java中,我們可以輕松地將XML和JSON格式轉(zhuǎn)換成其他格式,同時也可以將其他格式轉(zhuǎn)換成XML或JSON格式。

Java處理XML格式的類庫主要是javax.xml包中的類。主要涉及的類有Dom、Sax和StAX類。使用這些類,我們可以從文件、輸入流或字符串讀取XML數(shù)據(jù),而不用依賴于第三方的類庫。以下是一個將XML數(shù)據(jù)轉(zhuǎn)換成JSON格式的例子:

import org.json.JSONObject;
import org.w3c.dom.Document;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
public class XMLtoJSONConverter {
public static JSONObject convert( String xmlData ) throws Exception {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
InputStream inputStream = new ByteArrayInputStream(xmlData.getBytes());
Document document = builder.parse(inputStream);
return XML.toJSONObject(document.getDocumentElement());
}
}

在上述代碼中,我們使用org.json包中的JSONObject類將XML格式轉(zhuǎn)換成JSON格式。XML.toJSONObject()方法是將XML轉(zhuǎn)換成JSONObject對象的方法。因此,我們需要將XML的Root Element傳遞給該方法。

類似地,我們還可以將JSON格式轉(zhuǎn)換成XML格式。我們可以使用javax.xml.transform包中的類。以下是一個將JSON數(shù)據(jù)轉(zhuǎn)換成XML格式的例子:

import org.json.JSONObject;
import java.io.StringWriter;
import javax.xml.transform.*;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
public class JSONtoXMLConverter {
public static String convert(JSONObject jsonData) throws Exception {
DOMSource source = new DOMSource(XML.toDocument(jsonData.toString()));
StringWriter writer = new StringWriter();
StreamResult result = new StreamResult(writer);
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.transform(source, result);
return writer.toString();
}
}

在上述代碼中,我們使用了javax.xml.transform包中的類。我們首先將JSONObject對象轉(zhuǎn)換為DOMSource對象(命名空間必須被省略),該對象包含JSON數(shù)據(jù)的XML表示形式。接下來,我們創(chuàng)建一個Transformer對象,該對象負責(zé)將DOMSource對象轉(zhuǎn)換為XML格式。最后,我們返回XML字符串。

Java的XML和JSON互轉(zhuǎn)非常簡單,我們可以使用Java的類庫快速完成這項工作。我們只需要將XML和JSON對象傳遞給相應(yīng)的轉(zhuǎn)換方法,即可完成格式轉(zhuǎn)換。