JSONArray,JSONObject解析复杂的json数据

前端之家收集整理的这篇文章主要介绍了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;

猜你在找的Json相关文章