将JSON数据写入磁盘

编写JSON数据/ NSDictionary并再次读取它的最简单方法是什么? 我知道有NSFileManager,但有没有一个开源框架库可以使这个过程更容易? iOS5 NSJSONSerialization类是否支持将数据写入磁盘?

是的, NSJSONSerialization是要走的路:

 NSString *fileName = @"myJsonDict.dat"; // probably somewhere in 'Documents' NSDictionary *dict = @{ @"key" : @"value" }; NSOutputStream *os = [[NSOutputStream alloc] initToFileAtPath:fileName append:NO]; [os open]; [NSJSONSerialization writeJSONObject:dict toStream:os options:0 error:nil]; [os close]; // reading back in... NSInputStream *is = [[NSInputStream alloc] initWithFileAtPath:fileName]; [is open]; NSDictionary *readDict = [NSJSONSerialization JSONObjectWithStream:is options:0 error:nil]; [is close]; NSLog(@"%@", readDict); 

看来你必须确保路径中的目录存在,否则当使用+ writeJSONObject:toStream:options:error:时,你的应用程序将挂起并消耗100%的CPU + writeJSONObject:toStream:options:error: . 文件本身将由流创建。