2011-06-21 69 views
0

試圖設定值/密鑰對時,遇到了以下錯誤時收到錯誤:試圖設定值/密鑰對與SBJsonWriter

2011-06-21 16:21:16.727 agent[94408:207] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<SBJsonWriter 0xab31230> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key key.' 

這裏是代碼:

SBJsonWriter *writer = [[SBJsonWriter alloc] init]; 

[writer setValue:@"val" forKey:@"key"]; 

NSString *json = [writer JSONRepresentation]; 

NSLog([NSString stringWithFormat:@"json: @%", json]); 

回答

2

正在使用從(NSObject)類別鍵 - 值編碼,

使用字典界面: 進口JSON.h則:

NSMutableDictionary * dict = [NSMutableDictionary new]; 
    [dict setValue:@"val" forKey:@"key"]; 

    NSLog(@"json: %@", [dict JSONRepresentation]); 

p.s. NSLog接受一種格式,所以你不需要從格式中創建一個字符串傳遞給它。

+0

啊甜 - 所以我甚至不需要使用JSON庫呢?可以用NSMutableDictionary完成這一切嗎? – xil3

+0

它們被實現爲現有類的類別,因此不是直接的。 –

+0

更正...我的意思是我可以使用NSMutableDictionary從頭開始編寫json字符串,或者使用SBJsonParser將其解析爲NSDictionary對象。 – xil3