我有这个 JSON:
{
"-1":{
"name":"Ad hoc",
"modifiedBy":"",
}
},
"9":{
"name":"my name",
"modifiedBy":"me",
}
}
}
标签"-1"
和"9"
是我不知道的ID。
我需要使用带有 JSON 路径的"name"
"my name"
获取标记"9"
。
我该怎么做?我使用Java。
我假设您问题中的 JSON 是 Java 的JSONObject
形式。我们称这个对象为myjson
。假设您正在尝试获取内部"名称"值为"Ad hoc"的子对象的 ID:
String nameKey = "Ad hoc";
String theID = "";
Set keys = myjson.keySet();
Iterator iter = keys.iterator();
while(iter.hasNext()) {
String key = (String)iter.next();
String name = (String)jsonObject.getJSONObject(key).get("name");
if (name.equals(nameKey)) {
theID = key;
}
}
变量theID
现在应包含所需的 ID。如果未找到匹配项,theID
将为空字符串。