Как кэшировать или хранить проанализированный XML-файл? - PullRequest
1 голос
/ 14 сентября 2011

Мое приложение анализирует xml-файл с моего сервера, но я хочу сохранить проанализированный xml-файл и при следующем запуске моего приложения контроллер сначала должен загрузить сохраненный xml-файл, а затем контроллер должен снова проанализировать его, чтобы убедиться в наличии обновленияЯ сделал в xml-файле, если есть, новые проанализированные элементы также должны быть сохранены снова.

Я имею в виду эти приложения, такие как журналы, газетные приложения.Когда вы открываете такие приложения, загружаются сохраненные данные, которые были загружены в предыдущем сеансе.Однако после загрузки он начинает обновлять данные и снова сохраняет новое обновление.

С чего начать?Что вы, ребята, предлагаете?

Заранее спасибо ...

Ответы [ 3 ]

2 голосов
/ 14 сентября 2011

Вы можете использовать CoreData или SQLite (используйте обёртку Objective-C FMDB https://github.com/ccgus/fmdb) для сохранения вашего XML. Затем обновляйте базу данных каждый раз, когда вы видите уникальный идентификатор. Зависит от того, как ваши XML-данные.

0 голосов
/ 14 сентября 2011

CoreData или SQLite могут сделать трюк

0 голосов
/ 14 сентября 2011

На самом деле довольно легко хранить в каталоге документов. Например:

NSData *data; //this is your xml file
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docs = [paths objectAtIndex:0];
NSString *filename = [NSString stringWithFormat:@"test.xml"];
NSString *path = [docs stringByAppendingPathComponent:filename];
[data writeToFile:path atomically:YES];

Затем, чтобы получить его позже, вы можете получить путь, как указано выше, но получите файл вместо записи:

NSData *data = [NSData dataWithContentsOfFile:path];
...