0

これを広範囲に検索しましたが、これまでのところ、問題に一致する質問が見つかりませんでした。「一意の」JSON 出力があり、Objective-C で解析しようとしています。

まず、これは解析する必要がある JSON です。

{
"code": 1,
"req": {
    "123": [ //this can be different all the time
        {
            "item_id": "44",
            "item_value": "the value",
            "item_code": "21z"
        },
        {
            "item_id": "45",
            "item_value": "another value",
            "item_code": "l30"
        }
    ]
}
}

上記のように、「req」のすぐ下にある「123」はさまざまであるため、Objective-C で値をハードコードすることはできません。

これまでのところ、NSMutableDictionary を使用して HTTP 応答を受信しようとしています。

NSMutableDictionary dict = [NSJSONserializationWithData:responseData options:options error:&error];
NSArray *array = [[dict objectForKey@"req"];

しかし、ここから変数 (123) キーを指定する方法がわかりません..毎回異なる可能性があるためです。

4

1 に答える 1

0

「req」オブジェクトに複数の配列が含まれますか?

そうでない場合は、「req」オブジェクト内のオブジェクトをループして、オブジェクトのタイプが NSArray と一致するかどうかを確認できます

例えば

for(id obj in array)
{
    if([obj isKindOfClass:[NSArray class]])
    {
         //123 object = obj
    }
}
于 2013-05-16T15:56:13.037 に答える