[英]gson parse items from comma-separated-value string within a json value
我正在使用gson
解析json
字符串。 與此類似:
{
"ACode": "aa",
"RCode": "rr",
"Errors": "e1,e2,e3"
}
我認為錯誤應該是一個正確的json
數組,但是我對此沒有控制權。
我想將錯誤放入java
的數組或集合中。 使用String.split
和逗號作為分隔符,這很容易。 但是我是gson
,我不知道我是否會忽略它提供的功能,該功能可以解析逗號分隔的字符串。
有人知道gson
是否可以自動處理嗎?
我想將錯誤放入Java的數組或集合中。
試試這個
String json = "{\"ACode\": \"aa\",\"RCode\": \"rr\", \"Errors\": \"e1,e2,e3\" }";
class ErrorsDeserializer implements JsonDeserializer<String[]> {
public String[] deserialize(JsonElement json, Type typeOfT,
JsonDeserializationContext context) throws JsonParseException {
return ((JsonObject) json).getAsJsonPrimitive("Errors").getAsString().split(",");
}
}
Gson gson1 = new GsonBuilder().registerTypeAdapter(String[].class, new ErrorsDeserializer())
.create();
String[] errors = gson1.fromJson(json, String[].class);
for (String error : errors) {
System.out.println(error);
}
您可以使用變量“ ACode”,“ RCode”,“ Errors”創建一個類,然后使用gson將其轉換為該類。CustomObject obj2 = gson.fromJson(json,CustomObject .class);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.