ios 天气接口的获取 json实现

一个简单 ios 天气预报的实现。


1.首先获得SBjson.

http://download.csdn.net/download/duxinfeng2010/4484842点击打开链接 第三方。


2.获得中国天气的 api 接口。  101010100为城市代码的编号。可以参照

http://blog.csdn.net/duxinfeng2010/article/details/7830136


以北京为例

http://m.weather.com.cn/data/101010100.html  格式为json。


3.获取天气接口内容。显示在 iphone模拟器上。


  1. //获取API接口  
  2.     NSURL *url = [NSURL URLWithString:@"http://m.weather.com.cn/data/101010100.html"];  
  3.     //定义一个NSError对象,用于捕获错误信息  
  4.     NSError *error;  
  5.     NSString *jsonString = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&error];  
  6.     NSLog(@"jsonString--->%@",jsonString);  
  7.     //将解析得到的内容存放字典中,编码格式为UTF8,防止取值的时候发生乱码  
  8.     NSDictionary *rootDic = [[CJSONDeserializer deserializer] deserialize:[jsonString dataUsingEncoding:NSUTF8StringEncoding] error:&error];  
  9.     //因为返回的Json文件有两层,去第二层内容放到字典中去  
  10.     NSDictionary *weatherInfo = [rootDic objectForKey:@"weatherinfo"];  
  11.     NSLog(@"weatherInfo--->%@",weatherInfo);  
  12.     //取值打印  
  13.     txtView.text = [NSString stringWithFormat:@"今天是 %@  %@  %@  的天气状况是:%@  %@ ",[weatherInfo objectForKey:@"date_y"],[weatherInfo objectForKey:@"week"],[weatherInfo objectForKey:@"city"], [weatherInfo objectForKey:@"weather1"], [weatherInfo objectForKey:@"temp1"]]; 



你可能感兴趣的:(ios学习进度)