如何解析此JSON对象

时间:2011-08-26 11:56:22

标签: android json

这是我服务器的json响应。我如何解析它并将其存储在HashMap中?请帮我。

 {'records':
     [{
        'number':165, 
        'description': 'abcd'
      },
      {
         'number':166, 
         'description': 'ab'
      },
      {
         'number':167, 
         'description': 'abc'
      }]
  }

4 个答案:

答案 0 :(得分:1)

我是Android的新手,但也许你可以这样做:

JSONObject JsonObject = new JSONObject(json);
JSONArray JsonArray_ = JsonObject .getJSONArray("records");

for (int i = 0; i < numberOfItems; i++) {
JSONObject record= JsonArray_photo.getJSONObject(i);    
parsedObject.number = record.getString("number"); //its the same for all fields        
map.add(parsedObject);
}

我为自己的JSON解析器做了类似的事情。希望这可以帮助。欢呼声

答案 1 :(得分:0)

我建议您查看gson库,这使得将JSON解析为表示数据的对象非常容易。因此,您可以创建一个Record对象,其中包含数字,描述的公共成员变量,然后使用gson将JSON解析为对象数组。

http://code.google.com/p/google-gson/

将.jar添加到libs文件夹中,然后像这样使用它:

Record[] records = new GsonBuilder().create().fromJson(jsonString,Record[].class)
int number = record[0].number;

答案 2 :(得分:0)

Android中包含org.json个包:http://developer.android.com/reference/org/json/package-summary.html

使用很简单:

JSONObject json_object = new JSONObject(String json_string);

然后可以将每个属性作为Java属性访问,例如, json_object.property。如果由于某种原因解析失败(即无效的JSON),它将抛出JSONException

答案 3 :(得分:0)

您可以使用Gson库,您可以在softwarepassion.com

上找到完整的教程