2013-01-15 139 views
2

我想在這裏解析一個json,但由於某些原因不斷收到錯誤。我的代碼是iOS JSON解析錯誤

NSString *string = [NSString stringWithFormat:@"http://api.wunderground.com/api/3c158b3b3cd6ce90/hourly/q/11758.json"];//, query]; 
NSString *string2 = [string stringByReplacingOccurrencesOfString:@" " withString:@"_"]; 
NSData* data = [NSData dataWithContentsOfURL: 
       [NSURL URLWithString:string]]; 
NSError* error; 

NSDictionary *res = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&error]; 

NSArray* latestLoans = [res objectForKey:@"forecast"]; //2 
NSArray *tmp = [latestLoans valueForKey:@"temp"]; 
NSLog(@"temp: %@", tmp); 

,誤差

temp: (null) 
Entity: line 2: parser error : Start tag expected, '<' not found 
{ 
^ 

我不明白這一點,因爲URL是真實的,並得到響應,我需要這個

+0

什麼是'string2'點?它看起來沒有被使用。 – ThomasW

+0

它是,但現在我只是沒有使用它 –

+1

我沒有看到一個關鍵的「預測」的響應,但有「hourly_forecast」。也就是說,我沒有看到任何會導致錯誤的原因 - 是來自後面的代碼嗎? – DrC

回答

1

幫助你是什麼尋找「預測」,並不存在於迴應中。也許你正在尋找的是「hourly_forecast」。

NSArray* latestLoans = [res objectForKey:@"hourly_forecast"]; //2 
NSArray *tmp = [latestLoans valueForKey:@"temp"]; 
+0

是的,這是問題 –