7

对此进行了太多讨论,但我无法弄清楚如何解决我的问题。

这是我从 WorldWeatherOnline 获得的 JSON 数据。JSON 是有效的。但我不知道如何解析它。这是我的代码,后跟 JSON。请帮忙!

NSError* errorInfo;
NSDictionary *parsedJSON = [NSJSONSerialization JSONObjectWithData:self.wwoWeatherData options:kNilOptions error:&errorInfo];

NSArray* temp = [parsedJSON objectForKey:@"temp_C"];
NSLog(@"%@", temp);
   {
   “数据”:{
      “现在的状况”:[
         {
            “云罩”:“0”,
            “湿度”:“82”,
            "observation_time":"11:07 PM",
            "precipMM":"0.0",
            “压力”:“1024”,
            "temp_C":"16",
            "temp_F":"61",
            “能见度”:“10”,
            "天气代码":"113",
            “天气描述”:[
               {
                  “值”:“清除”
               }
            ],
            “天气图标网址”:[
               {
                  “价值”:“http:\/\/www.worldweatheronline.com\/images\/wsymbols01_png_64\/wsymbol_0008_clear_sky_night.png”
               }
            ],
            "winddir16Point":"NNE",
            "winddirDegree":"30",
            "windspeedKmph":"11",
            “风速里程”:“7”
         }
      ],
      “要求”:[
         {
            "query":"Lat 48.85 和 Lon 2.35",
            “类型”:“纬度”
         }
      ],
      “天气”:[
         {
            "日期":"2012-09-04",
            "precipMM":"0.0",
            "tempMaxC":"25",
            "tempMaxF":"77",
            "tempMinC":"14",
            "tempMinF":"57",
            "天气代码":"113",
            “天气描述”:[
               {
                  “价值”:“晴天”
               }
            ],
            “天气图标网址”:[
               {
                  “价值”:“http:\/\/www.worldweatheronline.com\/images\/wsymbols01_png_64\/wsymbol_0001_sunny.png”
               }
            ],
            "winddir16Point":"N",
            "winddirDegree":"5",
            “风向”:“N”,
            "windspeedKmph":"13",
            “风速里程”:“8”
         },
         {
            "日期":"2012-09-05",
            "precipMM":"0.0",
            "tempMaxC":"22",
            "tempMaxF":"72",
            "tempMinC":"10",
            "tempMinF":"50",
            "天气代码":"113",
            “天气描述”:[
               {
                  “价值”:“晴天”
               }
            ],
            “天气图标网址”:[
               {
                  “价值”:“http:\/\/www.worldweatheronline.com\/images\/wsymbols01_png_64\/wsymbol_0001_sunny.png”
               }
            ],
            "winddir16Point":"NNE",
            "winddirDegree":"25",
            "风向":"NNE",
            "windspeedKmph":"20",
            “风速英里”:“13”
         },
         {
            "日期":"2012-09-06",
            "precipMM":"0.0",
            "tempMaxC":"22",
            "tempMaxF":"71",
            "tempMinC":"11",
            "tempMinF":"51",
            "天气代码":"113",
            “天气描述”:[
               {
                  “价值”:“晴天”
               }
            ],
            “天气图标网址”:[
               {
                  “价值”:“http:\/\/www.worldweatheronline.com\/images\/wsymbols01_png_64\/wsymbol_0001_sunny.png”
               }
            ],
            "winddir16Point":"NE",
            "winddirDegree":"42",
            "风向":"NE",
            "windspeedKmph":"15",
            “风速里程”:“10”
         },
         {
            "日期":"2012-09-07",
            "precipMM":"0.0",
            "tempMaxC":"24",
            "tempMaxF":"75",
            "tempMinC":"13",
            "tempMinF":"55",
            "天气代码":"116",
            “天气描述”:[
               {
                  “值”:“部分多云”
               }
            ],
            “天气图标网址”:[
               {
                  “价值”:“http:\/\/www.worldweatheronline.com\/images\/wsymbols01_png_64\/wsymbol_0002_sunny_intervals.png”
               }
            ],
            "winddir16Point":"ENE",
            "winddirDegree":"56",
            "风向":"ENE",
            "windspeedKmph":"13",
            “风速里程”:“8”
         },
         {
            "日期":"2012-09-08",
            "precipMM":"0.0",
            "tempMaxC":"26",
            "tempMaxF":"78",
            "tempMinC":"16",
            "tempMinF":"61",
            "天气代码":"113",
            “天气描述”:[
               {
                  “价值”:“晴天”
               }
            ],
            “天气图标网址”:[
               {
                  “价值”:“http:\/\/www.worldweatheronline.com\/images\/wsymbols01_png_64\/wsymbol_0001_sunny.png”
               }
            ],
            "winddir16Point":"ENE",
            "winddirDegree":"76",
            "风向":"ENE",
            "windspeedKmph":"9",
            “风速里程”:“6”
         }
      ]
   }
}
4

1 回答 1

8

您解析的 json 包含一个名为data. 在该字典中是一个数组current_condition。继续深入研究数据结构以找到您正在寻找的属性:

NSDictionary *data = [parsedJSON objectForKey:@"data"];
NSArray *currentConditions = [data objectForKey:@"current_condition"];
NSDictionary *condition = [currentConditions objectAtIndex:0];
NSString *tempC = [condition objectForKey:@"temp_C"];
于 2012-09-04T00:12:21.173 回答