0

我有一个如下所示的 JSON 文件。

{
"user":
    [
        {
            "id": "1",
            "firstname":"Xyz",
        },
        {
            "id": "2",
            "firstname":"Abc",
        }           
    ],

"animal":
    [
        {
            "id": "1",
            "firstname":"Elephant",
        },
        {
            "id": "2",
            "firstname":"Horse",
        }
    ]   
}

在服务器端,他们正在使用新的父 JSON 对象更新这个 JSON 文件。如您所见,有“用户”和“动物”对象。服务器可以添加另一个具有相同属性“id”和“firstname”的对象“birds”。

我需要的是以编程方式找出父对象并提取它们的名称。

如果 JSON 文件是静态文件,我可以读取并获取输出。我在这里问的是一种查找父 JSONObjects 的方法。

JSONObject jsonObject = new JSONObject(uriToJsonFile);
JSONArray jsonArray = jsonObject.getJSONArray("user");

如果我能够做我所要求的,我们不需要硬编码值“用户”,jsonObject.getJSONArray("user");而是我们可以通过编程方式传递该值。

提前致谢

4

3 回答 3

2
jsonObject.getNames(jsonObject);

这将返回对象中的所有键..希望这是您想要的...

于 2012-04-24T06:26:02.740 回答
0

获取字符串数组并将其传入jsonObject.getJSONArray(your array);

如果您将尝试获得第一个对象然后通过

jsonObject.getJSONArray(array[pos]);

并且在array{"user","animal"};

pos从第一个对象获取所有值后增加。

于 2012-04-24T06:24:55.300 回答
0

JSONObject类中有一个方法调用“名称” 。

JSONArray objNames = jsonObject.names();
System.out.println(objNames.toString());

当您运行此代码时,您可以获得以下输出

[“用户”,“动物”]

它显示所有父对象

于 2012-04-24T06:58:34.837 回答