-1

我有一些使用 yajl 解析器的代码:

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

解析后我得到了一些json数据,比如

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

我的问题是下一个:我如何从解析数据的特定值中获取数据。

*前任。我想要“account_number”,我得到“123”*

4

2 回答 2

0

你的问题应该很清楚,没有错字

您确定您获得的 json 数据格式与您在问题中输入的格式相同,还是只是一个错字?

我假设您的 json 数据类似于 { "account_number": "123", "some_stuff": 231, }

那么它只是一个简单的字典,您可以使用 valueForKey 方法获取值。

于 2012-03-21T21:36:11.833 回答
0

您可能需要查看流 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 { }
于 2012-03-21T21:40:03.173 回答