ios SBJson4.x解析json数据。

来源:互联网 发布:转行做软件开发 编辑:程序博客网 时间:2024/05/12 14:25
刚刚升级SBJson到最新版本4.0.1后发现原来的解析数据的方法便了。代码如下。
[objc] view plain copy
  1. AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];  
  2.       
  3.         manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"];//设置相应内容类型  
  4.     [manager GET:url parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {  
  5.         NSLog(@"Success: %@", responseObject);  
  6.         //处理json  
  7.         NSString *requestTmp = [NSString stringWithString:operation.responseString];  
  8.         NSData *resData = [[NSData alloc] initWithData:[requestTmp dataUsingEncoding:NSUTF8StringEncoding]];  
  9.         SBJson4Parser *parser = [SBJson4Parser parserWithBlock:^(id item, BOOLBOOL *stop) {  
  10.             NSObject *itemObject = item;  
  11.               
  12.             if ([item isKindOfClass:[NSDictionary class]]) {  
  13.                 NSDictionary *activitiesDict = (NSDictionary*)itemObject;  
  14.                 NSLog(@"%@",[activitiesDict objectForKey:@"result"]);  
  15.             }  
  16.         }  
  17.                                                 allowMultiRoot:NO  
  18.                                                unwrapRootArray:NO  
  19.                                                   errorHandler:^(NSError *error) {  
  20.                                                       NSLog(@"%@", error);  
  21.                                                   }];  
  22.         [parser parse:resData];  
  23.   
  24.   
  25.     } failure:^(AFHTTPRequestOperation *operation, NSError *error) {  
  26.         NSLog(@"Error: %@", error);  
  27.     }];  
解析是一个同步方法:
[objc] view plain copy
  1. [parser parse:resData];  

[objc] view plain copy
  1. [SBJson4Parser parserWithBlock:^(id item, BOOLBOOL *stop)  
0 0