从java中的HTTP响应中解析并获取特定字段

时间:2015-11-16 08:33:48

标签: java json gson jsonobject

我尝试将HTTP响应解析为JSONObject并检索一些字段,可以是String或int。 我的回答是像这样的json数组:

[{nid: "24161",changed: 1445936169,created: "1444728767",language: "en",status: 1,title: "bicycle",type: "product",uid: "2172",vid: "24161"}]

我尝试使用:

JSONObject myObject = new JSONObject(response);

gson仍然在解析响应后转为{}。 谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

您正在将json数组解析为对象。使用JSONArray代替JSONObject

JSONArray myArray = new JSONArray(response);

您可以通过数组中的索引获取对象。

答案 1 :(得分:1)

您必须使用JSONArray代替JSONObject

JSONArray array = new JSONArray(response);

然后,您可以迭代抛出数组并获取所需的字段

for(int i=0; i<array.length(); i++) {
    JSONObject object = array.getJSONObject(i);
    String nid = object.getString("nid");
    int changed = object.getInt("changed");
    //...
}