微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JSONArray,JSONObject解析复杂的json数据

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;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐