一尘不染

Java GSON:获取JSONObject下所有键的列表

json

我已经将GSON作为Java中的JSON解析器,但是键并不总是相同的。
例如。我有以下JSON:

{“我已经知道的对象”:{
“ key1”:“ value1”,
“ key2”:“ value2”,
“ AnotherObject”:{“ anotherKey1”:“ anotherValue1”,“ anotherKey2”:“
anotherValue2”}
}

我已经有了JSONObject“我已经知道的对象”。现在,我需要获取此对象的所有JSONElement,分别是“ Key1”,“ Key2”和“
AnotherObject”。
提前致谢。
编辑:输出应为带有JSONObject所有键的字符串数组


阅读 566

收藏
2020-07-27

共1个答案

一尘不染

您可以使用JsonParser将Json转换为中间结构,该结构允许您检查json内容。

String yourJson = "{your json here}";
JsonParser parser = new JsonParser();
JsonElement element = parser.parse(yourJson);
JsonObject obj = element.getAsJsonObject(); //since you know it's a JsonObject
Set<Map.Entry<String, JsonElement>> entries = obj.entrySet();//will return members of your object
for (Map.Entry<String, JsonElement> entry: entries) {
    System.out.println(entry.getKey());
}
2020-07-27