2010-07-20 3 views
1

Пример 1: ==> [{ "Имя": "Luxy"}] Пример 2: ==> { "имя": "Luxy"}iphone Xcode JSON вопрос

Оба примера я действительны формат JSON ...

в Xcode ... Я пишу ниже:

[словарь objectForKey: @ "имя"]

в примере 2, я могу получить "LUXY", но как же, если я использую пример 1, то это не удается? - это мой xcode неправильно?

+1

Вы должны указать, что JSON парсер вы используете и обеспечивают особенности о типе неудачи -ошибка и т.п. – Nick

ответ

0

Я предполагаю, что вы используете json-framework от stig? Если это так, когда вы разбираете пример, вы получаете NSArray. Когда вы разбираете пример два, вы получаете NSDictionary.

id example1 = [parser objectWithString:jsonString]; 

if ([example1 isKindOfClass:[NSArray class]]) { 
    // You've got an array, probably an array of dictionaries 
} else if ([example1 isKindOfClass:[NSDictionary class]]) { 
    // you've got a dictionary, handle it 
} else { 
    // you've got something else 
} 
0

Благодаря Kubi !!! Ты прав! забыл основную логику JSon о массиве разницы & объекта ...

Я совершенно новое в Xcode, но любопытное странно .... если есть массив ...

NSString * элемент = [example1 objectAtIndex: 0];

я могу получить строку из элемента ... но странно, когда я ставлю

NSDictionary * словарь = [элемент JSONValue]; < == на данном этапе я получаю некоторый unrecongized селектор .....

[словарь objectForKey: @ «имя»]

Смежные вопросы