2011-06-19 96 views

回答

16

谷歌搜索後,我沒有找到任何教程,但使用JSONKit應該是自我解釋。

下載使用NSURLConnection的或ASIHTTPRequest簡單地創建所有的JSON提要像這樣的對象字典的JSON飼料後:

//jsonString is your downloaded string JSON Feed 
NSDictionary *deserializedData = [jsonString objectFromJSONString]; 

//Helpful snippet to log all the deserialized objects and their keys 
NSLog(@"%@", [deserializedData description]); 

創建字典後,你可以簡單地做這樣的事情:

NSString *string = [deserializedData objectForKey:@"someJSONKey"]; 

這就是JSONKit背後的基礎知識。

JSONKit是強大得多,當然,你可以找到一些其他的東西,你可以用它在JSONKit.h

0

我會becareful有關使假設objectFromJSONString是返回一個NSDictionary做,它可以很以及返回一個數組,或nil,特別是如果服務器返回一些很少使用和想到的錯誤。

一個更適當的做法是:

NSError *error; 
id rawData = [jsonString objectFromJSONStringWithParseOptions:JKParseOptionNone error:&error]; 

if (error != nil) { 
    // evaluate the error and handle appropriately 
} 

if ([rawData isKindOfClass:[NSDictionary class]]) { 
    // process dictionary 
} 
else if ([rawData isKindOfClass:[NSArray class]]) { 
    // process array 
} 
else { 
    // someting else happened, 'rawData' is likely 'nil' 
    // handle appropriately 
} 

沒有這些檢查,你很可能結束了一個運行時錯誤,因爲服務器返回成才意外。