NSKeyedArchiver или [NSArray writeToFile: atomically:]? - PullRequest
1 голос
/ 29 декабря 2010

Ну, я просто дважды сохранил одни и те же данные, и с помощью NSKeyedArchiver файл был на 30 КБ больше (от 60 КБ до 90 КБ). Я знаю, что это немного, но у меня будет больше этих файлов, а некоторые будут больше других.Так в чем же разница и в чем преимущество использования одного из них?

1 Ответ

4 голосов
/ 29 декабря 2010

Вы можете придерживаться - [NSArray writeToFile: atomically:] для простых объектов, то есть тех, которые изначально поддерживаются списками свойств (в основном, строками, числами, датами, последовательностями байтов, а также массивами и словарями).

NSKeyedArchiver будет предпочтительным / необходимым по сравнению с NSArray / NSDictionary, если вы храните сложные данные.В отличие от списков свойств, созданных NSArray или NSDictionary, архив с ключами содержит метаданные обо всей иерархии графов объектов - объектах, их идентичностях, их отношениях, классах, переменных экземпляра, суперклассах.Данные являются ключами, которые можно использовать для обеспечения прямой или обратной совместимости путем игнорирования ключей (например, переменных экземпляра).Более подробную информацию об архивах (с ключами) можно найти в Руководство по программированию архивов и сериализаций .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...