gson遍历所有json数据所有的key和value
有一天,我想要去遍历json的所有key和value,通过这个去对比数据是否一致时,我想到了这个方法
使用
String json = "";
JsonObject jsonObject = gson.fromJson(json, JsonObject.class);
JsonElement tree = ParserUtils.parseFromJson(jsonObject.toString(), JsonElement.class);
jsonTree(tree);
遍历的方法
public void jsonTree(JsonElement e) {
if (e.isJsonPrimitive() || e.isJsonNull()) {
return;
}
if (e.isJsonArray()) {
JsonArray ja = e.getAsJsonArray();
if (null != ja) {
for (JsonElement ae : ja) {
jsonTree(ae);
}
}
return;
}
if (e.isJsonObject()) {
Set<Map.Entry<String, JsonElement>> es = e.getAsJsonObject().entrySet();
for (Map.Entry<String, JsonElement> en : es) {
System.out.println("这个是key::"+en);
System.out.println("这个是value::"+en.getValue().toString());
jsonTree(en.getValue());
}
}
}
还没有评论,来说两句吧...