iPhone - получить данные из парсера YAJLiOS - PullRequest
0 голосов
/ 22 марта 2012

У меня есть код, где я использую yajl парсер:

NSArray *JSONArray = [tempContainer yajl_JSON];
NSLog(@"array of json is = %@",JSONArray);  

и после разбора я получил некоторые данные JSON, такие как

{ 
  "account_number": "123", 
  "some_stuff": "231",
}

Мой вопрос следующий: как я получаю данные из определенного значения проанализированных данных.

* ех. я хочу "account_number", и я получаю "123" *

Ответы [ 2 ]

0 голосов
/ 22 марта 2012

Возможно, вы захотите заглянуть в потоковый API для создания NSMutableDictionaries из JSON:

NSData *data = [NSData dataWithContentsOfFile:@"example.json"];

 YAJLParser *parser = [[YAJLParser alloc] initWithParserOptions:YAJLParserOptionsAllowComments];
 parser.delegate = self;
 [parser parse:data];
 if (parser.parserError)
   NSLog(@"Error:\n%@", parser.parserError);

 parser.delegate = nil;
 [parser release];

 // Include delegate methods from YAJLParserDelegate 
 - (void)parserDidStartDictionary:(YAJLParser *)parser { }
 - (void)parserDidEndDictionary:(YAJLParser *)parser { }

 - (void)parserDidStartArray:(YAJLParser *)parser { }
 - (void)parserDidEndArray:(YAJLParser *)parser { }

 - (void)parser:(YAJLParser *)parser didMapKey:(NSString *)key { }
 - (void)parser:(YAJLParser *)parser didAdd:(id)value { }
0 голосов
/ 22 марта 2012

Ваш вопрос должен быть четким и без опечаток

Вы уверены, что получаете данные json в том же формате, в котором вы ввели вопрос, или простоопечатка?

Я предполагаю, что ваши данные json похожи на {"account_number": "123", "some_stuff": 231,}

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

...