您的位置:首页 > 移动开发 > Objective-C

JSONArray,JSONObject解析复杂的json数据

2016-07-31 00:00 393 查看
1、添加字符串和集合到json数组中

// 把字符串和list添加到jsonArray中
JSONArray jsonArrayValue = new JSONArray();
jsonArrayValue.add(0, isAdminUser);
jsonArrayValue.add(1,systems);
jsonArrayValue.add(2,authUrl);
jsonArrayValue.add(3,functions);

//  拼接json字符串
StringBuffer jsonStr = new StringBuffer();
jsonStr.append("{");
jsonStr.append("\""+loginName+"\":");
jsonStr.append(jsonArrayValue.toJSONString());
jsonStr.append("    }");

2、解析json数组(包括字符串和集合)

//获得json字符串
String jsonStr = InterfaceUtil.getFilterInfo(loginName);
// 字符串转化为JSON对象
JSONObject jsonObject = JSONObject.parseObject(jsonStr);
// 通过key转化为json数组
JSONArray jsonArray = jsonObject.getJSONArray(loginName);
// 获得数组第一个值
// 是否是管理员
String isAdminUser = (String)jsonArray.get(0);
// 获得数组第二个值为list集合
JSONArray sysJsonArray = jsonArray.getJSONArray(1);
// 通过路径查找系统id
String systemId = "";

for(int i = 0; i < sysJsonArray.size(); i++){
JSONObject sysJsonObject = sysJsonArray.getJSONObject(i);
// 获得json object里面的属性值
String sysPath = sysJsonObject.getString("contexpath");
if(tempContextUrl.equals(sysPath)){
systemId = sysJsonObject.getString("id");
break;
}
}

3、导入的包

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: