iPhone - 从YAJLiOS解析器得到数据
问题描述:
我有一些代码,我使用yajl解析器:iPhone - 从YAJLiOS解析器得到数据
NSArray *JSONArray = [tempContainer yajl_JSON];
NSLog(@"array of json is = %@",JSONArray);
和解析后,我得到了一些JSON数据,如
{
"account_number": "123",
"some_stuff": "231",
}
我的问题是接下来:我如何从解析数据的特定值中获取数据。
* ex。我想“ACCOUNT_NUMBER”,我也得到“123” *
答
你的问题应该是明确的,没有错字
你确定你所得到的JSON数据在相同的格式键入在你的问题或只是一个错字?
我想你的JSON数据就像 { “ACCOUNT_NUMBER”: “123”, “some_stuff”:231, }
那么它只是一个简单的字典,你可以得到使用valueForKey方法的价值。
答
你可能想看看流API从JSON建立NSMutableDictionaries:
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 { }