2010-08-04 63 views
0

我一直在努力使這項工作一段時間,但我想我需要外面的人來看看我做錯了什麼。在我的應用程序中,我從Web服務器獲取JSON值,並將其解析到我的表格視圖中。JSON解析在iPhone應用程序中的問題

responseData = [NSData dataWithContentsOfURL: [NSURL URLWithString: @"http://myserver/json"]]; 
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding]; 
NSDictionary *dict = [responseString JSONValue]; 
theData = [dict objectForKey:@"data"]; 

我現在唯一的問題是'theData'顯然是一個NSString,就我所能看到的。以下錯誤是我從視圖控制器調用'[theData count]'時從GDB獲得的錯誤。

-[NSCFString count]: unrecognized selector sent to instance 0x6eb5380 

什麼我的JSON看起來像

{ 
    "code": 100, 
    "data": [ 
    { 
     /** Some object */ 
    }] 
} 

回答

0

您可以測試如果一個NSString有:

[theData isKindOfClass:[NSString class]] 

而且爲什麼您使用NSCFString代替的NSString? NSString沒有計數方法!如果你想有一個字符串它只是長度:

[theData length]; 
+0

使用測試方法,我可以看到數據實際上是一個字符串,當它應該是一個數組。我還發現我使用的JSON解析器沒有按預期工作。使用另一個可以工作的JSON解析器,我得到了我想要的結果和一個數組。 – eriktm 2010-08-05 08:45:30

0

您是否嘗試過通過枚舉字典「字典」,看看是否所有的鍵&值是你期待什麼?