java 解析JSON对象与数组

来源:互联网 发布:java se for mac10.11 编辑:程序博客网 时间:2024/04/30 04:03

http get方式获取json的格式:

HTTP get json={"msg": "Success", "total": 4, "code": 0, "data": [{"operate": "创建", "userId": 86, "id": 16, "time": "2015-06-27 17:44:25"}, {"operate": "绑定设备", "userId": 87, "id": 17, "time": "2015-06-29 10:29:14"}, {"operate": "解绑设备", "userId": 87, "id": 19, "time": "2015-06-29 10:29:32"}, {"operate": "发起调拨", "userId": 87, "id": 21, "time": "2015-06-29 10:31:43"}]}

1、获取JSON的对象:

JSONObject jsondata =JSONObject.fromObject(json);    

获取某个对象的值   int类型  

jsondata.getInt("total")

获取某个对象的值   String 类型

jsondata.getString("msg")


2、获取JSON对象中的数组

 jsondata.getJSONArray("data")
打印的结果: [{"operate": "创建", "userId": 86, "id": 16, "time": "2015-06-27 17:44:25"}, {"operate": "绑定设备", "userId": 87, "id": 17, "time": "2015-06-29 10:29:14"}, {"operate": "解绑设备", "userId": 87, "id": 19, "time": "2015-06-29 10:29:32"}, {"operate": "发起调拨", "userId": 87, "id": 21, "time": "2015-06-29 10:31:43"}]

获取数组中的对象:

JSONArray jsonArray= jsondata.getJSONArray("data");for (int i = 0; i < jsonArray.size(); i++) {jsonArray.getJSONObject(i).getString("operate")jsonArray.getJSONObject(i).getString("time")jsonArray.getJSONObject(i).getInt("id")sonArray.getJSONObject(i).getInt("userId");}

循环出每个对象的值。

  



0 0