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クラスに`names'というメソッド呼び出しがあります。

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

このコードを実行すると、次の出力を得ることができます

["ユーザー"、"動物"]

すべての親オブジェクトが表示されます

于 2012-04-24T06:58:34.837 に答える
0

文字列配列を取り、それを渡しますjsonObject.getJSONArray(your array);

お気に入り

最初のオブジェクトを取得しようとする場合は、パスします

jsonObject.getJSONArray(array[pos]);

そしてarray{"user","animal"};

pos最初のオブジェクトからすべての値を取得した後に増加します。

于 2012-04-24T06:24:55.300 に答える