我是 GSON 的新手,在解析下面的 JSON 时遇到了麻烦。解析工作正常,直到它到达账单列表(盯着“0”:)。那时我在生成的 gson.fromJson 对象中得到一个空引用。如果这些账单是在 JSON 数组中指定的,我认为这很容易,但事实并非如此,我无法更改。处理这种情况的最佳方法是什么?
{
"status":"OK",
"masterlist":{
"session":{
"session_id":1007,
"session_name":"97th Legislature"
},
"0":{
"bill_id":446875,
"number":"HB4001"
},
"1":{
"bill_id":446858,
"number":"HB4002"
},
"2":{
"bill_id":446842,
"number":"HB4003"
},...
这是我的主要方法中的代码:
InputStream source = retrieveStream(url);
Gson gson = new Gson();
Reader reader = new InputStreamReader(source);
ResponseData response = gson.fromJson(reader, ResponseData.class);
这是 ResponseData 类:
public class ResponseData {
private String status;
private MasterList masterlist;
public static class MasterList{
private Session session;
private Bill bill; //Also tried: Map<String, String> bill;
}
public static class Session{
private String session_id;
private String session_name;
}
public static class Bill{
private String bill_id;
private String number;
}
}