Commit e8cd979bd4195d1e9fd43bcafd20a169bf1dd8b5
1 parent
cb385326
Exists in
master
1.完善jsonutil方法
Showing
2 changed files
with
39 additions
and
1 deletions
Show diff stats
build.gradle
src/main/java/com/taover/util/UtilJSON.java
... | ... | @@ -57,6 +57,44 @@ public class UtilJSON { |
57 | 57 | } |
58 | 58 | } |
59 | 59 | |
60 | + public static void replaceJsonNull(JSONObject data, Object target){ | |
61 | + if(data == null || data.isNullObject()){ | |
62 | + return; | |
63 | + } | |
64 | + Iterator<String> keyIter = data.keys(); | |
65 | + while(keyIter.hasNext()){ | |
66 | + String keyItem = keyIter.next(); | |
67 | + Object value = data.get(keyItem); | |
68 | + | |
69 | + if(isJsonNull(value)) { | |
70 | + data.put(keyItem, target); | |
71 | + } | |
72 | + | |
73 | + if(value instanceof JSONObject){ | |
74 | + replaceJsonNull((JSONObject)value, target); | |
75 | + continue; | |
76 | + } | |
77 | + | |
78 | + if(value instanceof JSONArray){ | |
79 | + replaceJsonNull((JSONArray)value, target); | |
80 | + } | |
81 | + } | |
82 | + } | |
83 | + | |
84 | + public static void replaceJsonNull(JSONArray dataArr, Object target){ | |
85 | + if(dataArr == null){ | |
86 | + return; | |
87 | + } | |
88 | + for(int i=0; i<dataArr.size(); ++i){ | |
89 | + JSONObject dataItem = dataArr.optJSONObject(i); | |
90 | + if(dataItem.isNullObject()){ | |
91 | + dataArr.set(i, target); | |
92 | + continue; | |
93 | + } | |
94 | + removeJsonNull(dataItem); | |
95 | + } | |
96 | + } | |
97 | + | |
60 | 98 | public static void main(String[] args){ |
61 | 99 | JSONObject data = JSONObject.fromObject("{\"message\":\"文字解析成功\",\"status\":true,\"statusCode\":\"null\",\"result\":{\"items\":[{\"district\":\"隆化县\",\"city\":\"承德市\",\"province\":\"河北省\",\"phone\":\"13621051230\",\"name\":{\"first_name\":\"wang\",\"second_name\":\"bin\",\"full_name\":null},\"address\":\"东阿超村\"}]}}"); |
62 | 100 | removeJsonNull(data); | ... | ... |