先上代码
package com.zhph;
/**
* @Description:
* @Author:xuhaibo
* @Date:${Date}
* @Modified By:
*/
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import java.util.Iterator;
/**
*
* @company
* @author superboo
* @version 3.0
* @date 2014-5-21 上午09:45:51
*/
public class JsonRaws {
public String getJsonStr1() {
String jsonStr = "{\"id\":\"1ui2kdic9\",\"j1\":{\"dd\":\"dd\",\"uu\":\"uu\"},\"j2\":{\"33\":\"33\",\"66\":\"66\",\"j22\":{\"00\":0}},\"name\":\"110\"}";
return jsonStr;
}
public String getJsonStr2() {
String jsonStr = "{\"id\":\"1ui2kdic9\",\"j1\":{\"dd\":\"dd\",\"uu\":\"uu\"},\"j2\":{\"33\":\"33\",\"66\":\"66\",\"j22\":{\"j0\":0},\"j23\":{\"00\":0}},\"name\":\"110\"}";
return jsonStr;
}
@SuppressWarnings("rawtypes")
public void analysisJson(Object objJson){
//如果obj为json数组
if(objJson instanceof JSONArray){
JSONArray objArray = (JSONArray)objJson;
for (int i = 0; i < objArray.length(); i++) {
analysisJson(objArray.get(i));
}
}
//如果为json对象
else if(objJson instanceof JSONObject){
JSONObject jsonObject = (JSONObject)objJson;
Iterator it = jsonObject.keys();
while(it.hasNext()){
String key = it.next().toString();
Object object = jsonObject.get(key);
//如果得到的是数组
if(object instanceof JSONArray){
JSONArray objArray = (JSONArray)object;
analysisJson(objArray);
}
//如果key中是一个json对象
else if(object instanceof JSONObject){
analysisJson((JSONObject)object);
}
//如果key中是其他
else{
if (key.equals("33")) {
System.out.println("[" + key + "]:" + object.toString() + " ");
}
}
}
}
}
public static void main(String[] args) {
JsonRaws jw = new JsonRaws();
JSONObject jsonObject = JSONObject.fromObject(jw.getJsonStr1());
jw.analysisJson(jsonObject);
}
}