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

gson json轉xml

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

最近在開發過程中需要將一些數據從json格式轉化為xml格式,發現Gson庫提供了非常方便的轉化方法,于是就使用了Gson庫。下面介紹一下使用Gson庫將json格式轉化為xml格式的方法。

首先需要導入Gson庫,在gradle中添加以下依賴:

dependencies {
implementation 'com.google.code.gson:gson:2.8.6'
}

接下來是代碼示例:

public class GsonDemo {
public static void main(String[] args) {
String jsonString = "{ \"name\": \"小明\", \"age\": 20 }";
Gson gson = new Gson();
JsonObject jsonObject = gson.fromJson(jsonString, JsonObject.class);
String xmlString = new XmlConverter().toXml(jsonObject);
System.out.println(xmlString);
}
}
class XmlConverter {
public static String toXml(JsonElement jsonElement) {
StringBuilder stringBuilder = new StringBuilder();
toXml(jsonElement, stringBuilder);
return stringBuilder.toString();
}
private static void toXml(JsonElement jsonElement, StringBuilder stringBuilder) {
if (jsonElement.isJsonObject()) {
JsonObject jsonObject = jsonElement.getAsJsonObject();
for (Map.Entryentry : jsonObject.entrySet()) {
stringBuilder.append("<").append(entry.getKey()).append(">");
toXml(entry.getValue(), stringBuilder);
stringBuilder.append("");
}
} else if (jsonElement.isJsonArray()) {
JsonArray jsonArray = jsonElement.getAsJsonArray();
for (JsonElement element : jsonArray) {
toXml(element, stringBuilder);
}
} else if (jsonElement.isJsonPrimitive()) {
JsonPrimitive jsonPrimitive = jsonElement.getAsJsonPrimitive();
stringBuilder.append(jsonPrimitive.getAsString());
}
}
}

可以看到,首先將json數據轉化為JsonObject對象,然后調用XmlConverter的toXml方法,將JsonObject對象轉化為xml格式的字符串。toXml方法主要是通過遞歸遍歷JsonObject對象的各個屬性,將其轉化為對應的xml標簽。

最后,得到的xml格式的字符串如下:

<name>小明</name><age>20</age>

這就是使用Gson庫將json格式轉化為xml格式的方法,非常方便易用。