我有以下 JSON 内容:
{
"query": {
"pages": {
"7931046": {
"pageid": 7931046,
"ns": 0,
"title": "Tang Aidi",
"revisions": [
{
"contentformat": "text/x-wiki",
"contentmodel": "wikitext",
"*": "SOME TEXT"
}
]
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试从中读取“SOME TEXT”字符串。
当我尝试读取“pages”对象时,我已经陷入困境。我猜它应该是一个 JSONObject 但它让我困惑
JSONObject["pages"] not found
Run Code Online (Sandbox Code Playgroud)
与以下代码:
JSONObject obj = new JSONObject(sEntireContent);
JSONObject oParse=(JSONObject) obj.get("query");
//JSONArray oPages=oParse.getJSONArray("pages");
>>>>>>>>>> JSONObject oPages=(JSONObject) obj.get("pages");
JSONObject firstPage=(JSONObject) oPages.get(0);
JSONObject oRevisions=(JSONObject) firstPage.get("revisions");
sWikitext=oRevisions.getString ("*");
Run Code Online (Sandbox Code Playgroud)
然后我不知道如何读取子对象,我不知道它的名称。在我的示例中,“7931046”是一个随机/序列号
如果 JSONObject 有一个或多个未知键作为子元素,您可以像这样迭代它们:
JSONObject pages = obj.get("pages");
Iterator iterator = pages.keys();
while(iterator.hasNext()){
String key = (String)iterator.next();
JSONObject page = pages.getJSONObject(key);
//do stuff with the page...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13614 次 |
| 最近记录: |