iOS中NSJSONSerialization解析JSON数据暨google地理信息处(2)

这是一个复杂的json格式,json中包含了数组,数组中有包含了若干级的json数据。
 
先将URL转码为UTF8,基于它创建一个NSMutableURLRequest,再使用NSURLConnection的sendAsynchronousRequest的方法,将response数据放到block中分析,分析方法就是NSJSONSerialization的类方法+ (id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error。
 它的分析步骤如下:
 第一步,根据json数据结构得到字典
 NSDictionary *resultsDic = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error];
 第二步,根据字典中组成,得到key为@"results"对应的对象是数组。
 NSArray *resultsArr = [resultsDic objectForKey:@"results"];
 第三步,使用for循环遍历这个数组
 for (NSDictionary * resultDetailDic in resultsArr)
 {
    NSDictionary * locationDic=[[resultDetailDic objectForKey:@"geometry"] objectForKey:@"location"];
    NSString * lat=[locationDic objectForKey:@"lat"];
    NSString * lng=[locationDic objectForKey:@"lng"];
   
    dispatch_async(dispatch_get_main_queue(), ^{
    NSLog(@"locationDic.lat 是--->%@\n",lat);
                        NSLog(@"locationDic.lng 是--->%@\n",lng);
    });// dispatch async main                             
 }
 第四步,根据for循环遍历的结果,得到每一个元素都是一个字典。
 NSDictionary * locationDic=[[resultDetailDic objectForKey:@"geometry"] objectForKey:@"location"];

linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/c330fa1372ab8988c5958d4d66d86bef.html