Какао Touch Обработка JSON

Я искал некоторое время, и я не могу найти решение.

Я пытаюсь отформатировать объект JSON, который хранится в NSData *receivedData.

Формат JSON:

[ { "имя": "Стивен", "прозвище": "Боб" }, { "имя": "Роб", "прозвище": "Майк" }, { "имя": "Арья", "прозвище": «Джейн» } ]

Обычно я бы использовал «NSJSONSerialization JSONObjectWithData:» из NSDictionary. Затем я обычно брал корень JSON (в данном случае это было бы что-то вроде «Люди» :) и создавал массив из этого корневого объекта. Однако, как вы можете видеть, этот ответ представляет собой просто массив без корневого объекта. Я не знаю, как с этим справиться. Конечная цель — получить массив объектов Person, заполненный данными в формате JSON.

Изменить: я также хотел бы добавить, что хочу сохранить его родным без сторонних библиотек.


person Biggs    schedule 15.06.2013    source источник


Ответы (1)


ОК для тех, кто читает это. Я только что понял это. Вместо того, чтобы форматировать исходные NSData в словарь, вы помещаете их прямо в массив. Затем создайте словарь для каждого объекта в массиве. Вот так:

NSArray *response = [NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:&error];
NSDictionary* json = [responseArray objectAtIndex:0];
NSLog (@"%@",[json objectForKey:@"nickname"]);
person Biggs    schedule 15.06.2013