【发布时间】:2011-04-18 18:58:32
【问题描述】:
我使用 SBJsonParser 来解析我从服务器查询的大型 json 响应。我想使用时间戳方法来知道何时我实际上必须重新获取并再次重新解析所有数据,所以我想知道如何在不需要的时候保存我的数据请求大型 JSON 包来刷新我的数据。
我想我应该使用 NSCoding 协议并大致如下存档:
// alloc nsdata obj
NSMutableData *data = [[[NSMutableData alloc] init] autorelease];
// create archiver
NSKeyedArchiver *archiver = [[[NSKeyedArchiver alloc] initForWritingWithMutableData:data] autorelease];
// archive whiteboard
[archiver encodeObject:mSaveData forKey:@"Data"];
[archiver finishEncoding];
[data writeToFile:dataPath atomically:YES];
但是有没有一种简单的方法来编码这个 JSON 对象,它实际上是一个 NSDictionaries 的 NSArray,还是我必须仔细地编码这个对象中的每个字段?
也许有一种更简单的方法,比如将 json 对象本身保存为字符串(在使用 objectWithData 方法解析之前)并在每次应用加载并想要使用本地副本时重新解析它?
【问题讨论】:
标签: objective-c json ios