0
我是新來改造和RX Java和我試圖解析以下JSON:Android的改造+ rxjava解析JSON
{
"result":
{
"offset": 0,
"limit": 2,
"count": 408,
"sort": "",
"results":[
{
"_id": "1",
"iid": "338",
"sv": "0",
"sd": "20000101000000",
"vtyp": "1",
"sno": "0001",
},
{
"_id": "2",
"iid": "339",
"sv": "0",
"sd": "20000101000000",
"vtyp": "1",
"sno": "0001",
}
]
}
}
我始載於「結果對象的數組中的興趣」。從我已經能夠找到的我應該實現JsonDeserializer來獲取該數據並在構建RestAdapter時使用.setConverter。這是我現在有:
class MyDeserializer implements JsonDeserializer<Pojo> {
@Override
public Station deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
JsonElement element = json.getAsJsonObject().get("results");
return new Gson().fromJson(element, Pojo.class);
}
我想改造GET調用返回
Observable<List<Pojo>>
表示在 「結果」 的對象
我Pojo.class看起來是這樣的:
public class Pojo {
public String _id;
public String iid;
public String sv;
public String sd;
public String vtyp;
}
現在寫我嘗試調用API時出現此錯誤,所以我認爲我在Json中出錯了反序列化:
retrofit.RetrofitError: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2 path $
任何幫助,將不勝感激!
我試圖避免,因爲他們創造三類根本不需要。這就是我試圖使用Json解串器的原因。如果按照您的建議進行操作,我可以解析數據,但如果可能的話,我希望在沒有不必要的類的情況下執行此操作 –