Хранение данных json на iPhone: сохраните строку json, как она есть, VS создайте объект из json и используйте NSCoding + NSKeyedArchiver - PullRequest
5 голосов
/ 08 февраля 2011

В моем приложении для iPhone я получаю данные json с удаленного сервера, анализирую их с помощью Json Framework и представляю их в UIview.Также необходимо иметь возможность предоставить пользователю возможность сохранять данные на устройстве, чтобы их можно было просматривать в автономном режиме.Мне было интересно, является ли сохранение данных json напрямую лучшим или худшим выбором, чем создание объекта и его сохранение с использованием NSCoding + NSKeyedArchiver.Я предполагаю, что преимущество сохранения строки json как таковой состоит в том, что она занимает меньше места на диске, чем заархивированный объект, в то время как, с другой стороны, при хранении заархивированных объектов вам не нужно каждый раз анализировать сохраненные данныеиспользуя меньше памяти.

Есть ли лучший общий выбор?Есть ли лучшие практики по этому вопросу?Размер файлов json составляет примерно 8 КБ.

1 Ответ

6 голосов
/ 08 февраля 2011

Я использую другой подход. Как только данные JSON анализируются в моем приложении, они сохраняются в NSDictionary. Я сохраняю это как файл .plist.

[myDictionary writeToFile:[self saveFilePath] atomically:YES];

Загрузить:

NSMutableDictionary *wholeDictionary = [NSDictionary dictionaryWithContentsOfFile:[self saveFilePath]];

Вот и все!

...