package com.zycfc.ic.test;
import java.util.Iterator;
import java.util.Set;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class Json {
public static void main(String[] args) {
String jsonStr="{" “:“6”,“bb”:“123456”,“cc”:{“bb”:”",“dd”:[{“aa”:“11”,"":“55”}]}}";
String replaceAll = jsonStr.replaceAll(" ", “”);
System.out.println(“obj2”+getNoNullValue(replaceAll));
}
public static JSONObject getNoNullValue(String json) {
JSONObject objTem=JSON.parseObject(json);
JSONObject objRel=JSON.parseObject(json);
return deal(objTem,objRel);
}
public static JSONObject deal(JSONObject objTem,JSONObject objRel) {
Set<String> keySet = objTem.keySet();
Iterator<String> iterator = keySet.iterator();
while(iterator.hasNext()) {
String temp = iterator.next();
Object objR = objTem.get(temp);
if("".equals(temp)) {
objRel.remove(temp);
continue;
}
if("".equals(objR.toString())||"[]".equals(objR.toString())||"{}".equals(objR.toString())) {
objRel.remove(temp);
continue;
}
if(objR instanceof JSONObject) {
JSONObject j=(JSONObject)objR;
JSONObject object2 = (JSONObject)objRel.get(temp);
deal(j,object2);
continue;
}
if(objR instanceof JSONArray) {
JSONArray jsonArray = objTem.getJSONArray(temp);
JSONArray jsonArray2 = objRel.getJSONArray(temp);
for(int i=0;i<jsonArray.size();i++) {
deal(jsonArray.getJSONObject(i),jsonArray2.getJSONObject(i));
}
}
}
return objRel;
}
}