[英]How to parse following json using Gson?
我已經看到了有關使用動態鍵解析json的類似問題,但無法弄清楚如何解析以下json:
{
"unknown":
{
"id":3980715,
"name":"namename",
"profileIconId":28,
"revisionDate":1451936993000
}
}
在這里,“未知”鍵是動態的,它可以是任何東西。 我們不知道這是什么。
我嘗試了以下課程:
public class MyResponseClass {
private Map<String, Object> myResponse;
//Getter and setter
}
但是在使用gson如下所示后,myResponse變為空:
return gson.fromJson(response, MyResponseClass.class);
那么,我該怎么做呢?
謝謝。
我可以設法將其解析如下:
Type mapType = new TypeToken<Map<String, MyResponseClass>>() {}.getType();
Map<String, MyResponseClass> map = gson.fromJson(response, mapType);
然后遍歷地圖以獲得我想要的東西。
在字段myResponse
添加注釋。
public class MyResponseClass {
@SerializedName("unknown")
private Map<String, Object> myResponse;
//Getter and setter
}
嘗試這個:
// String jsonStr = ...;
Gson gson = new Gson();
Map<String, Object> jsonData = new HashMap<String, Object>();
jsonData = (Map<String, Object>)gson.fromJson(jsonStr, Object.class);
您的JSON數據將存儲在Map<String, Object>
(這是在Java中存儲JSON數據的最簡單方法)。
因此,在此地圖中,使用unknown
密鑰的情況下,您將擁有另一張id
, name
等的地圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.