{
"Response": {
"Header": {
"StatusCode": 100,
"Status": "Success",
"Desc": "Success"
},
"Data": {
"ComparisionsOfReportProducts": {
"Datewise": [
{
"ReportDate": "04/11/2017",
"BT": "909",
"Ee": "1168",
"MG": "619",
"PY": "973",
"PF": "894",
"PA": "768",
"PX": "943"
},
{
"ReportDate": "04/14/2017",
"BT": "889",
"Ee": "1186",
"MG": "599",
"PY": "953",
"PF": "874",
"PA": "786",
"PX": "961"
},
{
"ReportDate": "04/16/2017",
"BT": "1162",
"Ee": "932",
"MG": "872",
"PY": "1226",
"PF": "1147",
"PA": "532",
"PX": "707"
},
{
"ReportDate": "04/18/2017",
"BT": "1020",
"Ee": "1055",
"MG": "730",
"PY": "1084",
"PF": "1005",
"PA": "655",
"PX": "830"
}
]
}
}
}
}
我需要解析上面的Json。使用動態密鑰解析Json使用Retrofit 2.0
@FormUrlEncoded
@POST("services/webservices/")
Observable<ResComparision> getcomparisionDetail(@Field(value = "encAuthToken", encoded = true)String token,
@Field(value = "itemId", encoded = true) String productId,
@Field(value = "FromDate", encoded = true)String sdate,
@Field(value = "ToDate", encoded = true)String edate);
解析他們我做了一個Pojo類。 但問題是「Datewise」的關鍵jsons數組的關鍵是動態的,在我當前的pojo類中,我已經採用了預定義的關鍵字,因此無法解析它們。
{
"ReportDate": "04/18/2017",
"BT": "1020",
"Ee": "1055",
"MG": "730",
"PY": "1084",
"PF": "1005",
"PA": "655",
"PQA": "655",
"PX": "830"
},
{
"ReportDate": "04/18/2017",
"PP": "1020",
"QB": "1055",
"MG": "730",
"PY": "1084",
"PF": "1005",
"PA": "655",
"VA": "655",
"PX": "830"
}
有沒有什麼辦法來動態解析「Datewise」json數組的值?
請檢查此鏈接是否有幫助https://stackoverflow.com/a/43347314/1252158 –
可能重複[Retrofit 2.0從相同的POJO類解析動態json](https://stackoverflow.com/questions/43346726/retrofit-2-0-parse-dynamic-json-from-same-pojo-class) –