Я использую 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, который действительно является NSArray из NSDictionaries, или мне нужно тщательно кодировать каждое поле в этом объекте?
Может быть, есть и более простой способ, например, сохранение самого объекта json в виде строки (до его анализа с помощью метода objectWithData) и повторный анализ его каждый раз, когда приложение загружается и хочет использовать локальную копию? *