iOS - сохранение NSMutableArray на iPhone - PullRequest
0 голосов
/ 24 января 2012

Я попрошу в гипотетической форме, что может помочь мне объяснить.

У меня есть класс с именем Person, и в нем есть три поля:

  • NSString *name;
  • NSDate *dateOfBirth
  • NSMutableArray *friends.

Примером этого объекта является:

  • name = "Джон Смит"
  • dateOfBirth = 01/04/1985
  • friends = "Саймон Скотт";"Дженнифер Лэйн";«Мэри Ферт»

Как только пользователь заполнит NSMutableArray данными, которые ему нужны, какой будет лучший способ сохранить эти данные на iPhone?Я ожидаю, что может быть до 100 экземпляров объекта Person, и все, что потребуется, - это отображение этих данных в UITableView и предоставление пользователю возможности добавлять и удалять записи по своему усмотрению.

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

Большое спасибо.

Ответы [ 2 ]

2 голосов
/ 24 января 2012

Пожалуйста, ознакомьтесь с Руководством по программированию списка свойств .Пока вы придерживаетесь базового набора типов объектов для ваших данных, вы можете записывать и считывать данные из файла или URL-адреса в одну строку, например:

[people writeToURL:someURL atomically:NO];

Типы, которые вы упомянулив вашем вопросе (строки, даты, массивы, словари) все можно записать в список свойств.

0 голосов
/ 24 января 2012

@ Achiral,

Это действительно зависит от того, что вы хотите делать с данными, и насколько вы обеспокоены гибкостью вашего кода.

Однако я рекомендую использоватьCoreData для создания базы данных SQLlite и создания сущности Person с указанными выше свойствами.Я не знаю, знакомы ли вы с CoreData, но он очень оптимизирован для iOS и довольно прост в использовании, поскольку имеет довольно простую форму для заполнения моделей для создания моделей данных.Следует также отметить, что CoreData - это приемлемый и поддерживаемый способ хранения данных в приложениях для iOS и OS X.

Надеюсь, это поможет.

...