您的位置:首页 > Web前端 > JavaScript

解析json的总结方法

2016-03-30 13:41 543 查看
JSON中有且只有两种结构:对象和数组。

1、对象:对象在js中表示为“{}”括起来的内容,数据结构为 {key:value,key:value,…}的键值对的结构,在面向对象的语言中,key为对象的属性,value为对应的属性值,所以很容易理解,取值方法为 对象.key 获取属性值,这个属性值的类型可以是 数字、字符串、数组、对象几种。

2、数组:数组在js中是中括号“[]”括起来的内容,数据结构为 [“java”,“javascript”,“vb”,…],取值方式和所有语言中一样,使用索引获取,字段值的类型可以是 数字、字符串、数组、对象几种。

例子:

解析下面json
{
"forumList": [
{
"typeName": "平板",
"id": 150,
"createTime": "2015-06-20 10:42:44",
"title": "中雨发布的iPad",
"count": 0,
"nickName": "巴正恩",
"isPhoto": "0"
},
{
"typeName": "平板",
"id": 149,
"createTime": "2015-06-20 10:42:30",
"title": "",
"count": 0,
"nickName": "巴正恩",
"isPhoto": "0"
},
]
}首先:
JSONObject json = new JSONObject(t.toString());//t为请求服务器后返回的数据

JSONArray jsonArr = json.optJSONArray("forumList");//“forumList”,后面是“[”,表示接下来是数组,所以用JSONArray.

//获取Key-value的值

for(int i=0;i<jsonArr.length();i++){

String typeName=jsonArr.getJSONObject(i).getString("typeName");

int id=jsonArr.getJSONObject(i).getString("id");

String createTime=jsonArr.getJSONObject(i).getString("createTime");

}


如果json数组中还有json数组:
String a=jsonArray.getJSONObject(i) .getJSONArray("goodsList").getJSONObject(i) .getInt("category");
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: