Хранить данные на Objective-C - PullRequest
1 голос
/ 08 ноября 2010

Я просто хотел бы создать файл, который останется после завершения работы программы.Я хотел бы, чтобы он содержал объекты, которые я инициировал, это возможно?Или в нем просто должен быть текст?Как я могу получить доступ к этому файлу позже?Кроме того, это делается так же на Mac и iPhone?

Ответы [ 4 ]

2 голосов
/ 08 ноября 2010

Взгляните на Базовые данные или SQLite.У Apple есть пример кода для них, не уверенный в SQLite, потому что они предпочитают, чтобы вы использовали базовые данные.

Я направлю вас на этот вопрос. Добавление основных данных в мое приложение для iPhone

Или используйте NSUserDefaults: Лучший способ сохранить данные на iPhone

1 голос
/ 08 ноября 2010

Да!Это возможно.

Получите ваши объекты, которые вы хотите сохранить из NSCoding.На этих объектах реализуйте функции initWithCoder и encodeWithCoder для этих объектов.В этих функциях запишите все ваши примитивные типы в кодер (или прочитайте их), используя функции здесь http://developer.apple.com/library/ios/#documentation/cocoa/reference/foundation/Classes/NSCoder_Class/Reference/NSCoder.html

Когда вы хотите сохранить свой файл, используйте NSKeyedArchiver и передайте объект, который вы хотитеархив с именем файла.

[NSKeyedArchiver archiveRootObject:root toFile:string]; 

Больше примеров здесь https://stackoverflow.com/questions/2805026/iphone-problem-in-saving-file-using-nscoding

0 голосов
/ 08 ноября 2010
0 голосов
/ 08 ноября 2010

В прошлом я использовал SQLitePersistentObjects , чтобы придать объектам класса Objective-C ощущение и поведение в стиле ORM. Сами объекты преобразуются в соответствующие таблицы в базе данных, которая в данном случае представляет собой простой файл базы данных SQLite.

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