Сохранить данные JSon в NSArray - PullRequest
0 голосов
/ 26 марта 2012

Я пытаюсь сохранить некоторые конкретные данные JSon и сохранить их в простом NSArray.

Это мой JSon:

products = {
    72 =     {
        value_a = "something1";
        value_b = "something2";
        value_c = "something3";
    };

    73 =     {
        value_a = "something1";
        value_b = "something2";
        value_c = "something3";
    };

    74 =     {
        value_a = "something1";
        value_b = "something2";
        value_c = "something3";
    };
    [etc]
}

Вот как я назначаю JSonданные в NSMutableArray.

NSMutableArray *array = [json objectForKey:@"products"];

Мне нужно хранить, скажем, просто value_b каждого дочернего элемента в массиве.Любое предложение?

Ответы [ 2 ]

4 голосов
/ 26 марта 2012

Здесь у вас есть словарь, содержащий ключ / значения, где значения также являются словарями.Если вам нужен массив, содержащий, скажем, value_b, каждого из этих словарей, вы можете получить его следующим образом:

NSDictionary *products = [json objectForKey:@"products"];
NSMutableArray *b_values = [[NSMutableArray alloc] initWithCapacity:0];

for (NSDictionary *product in [products allValues])
{
  [b_values addObject:[product valueForKey:@"value_b"]];
}

// Now you have an array with all "value_b" objects
1 голос
/ 26 марта 2012

Я не знаю, что вы используете, но я могу предложить вам использовать SBJsonFramework

В этом наборе есть очень удобные методы для хранения данных JSON.Сохраните все данные Json в

NSMutableDictionary

Затем для каждого объекта вы можете извлечь определенное значение, используя ключ для их сохранения в

NSMutableArray

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...