как сохранить данные в файл XML на iPhone - PullRequest
1 голос
/ 07 июня 2011

Я хочу сохранить данные в XML-файл, который включает

  • Создать XML-файл
  • вставить в него
  • удалить из него
  • обновить определенный узел
  • читать все элементы

любые предложения, пожалуйста, любой пример учебного кода будет высоко оценен

Ответы [ 3 ]

4 голосов
/ 07 июня 2011
NSURL *url = [NSURL URLWithString:@"http://abcd.com/sample.xml"];
NSData *data = [NSData dataWithContentsOfURL:url];  // Load XML data from web

// construct path within our documents directory
NSString *applicationDocumentsDir = 
   [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *storePath = [applicationDocumentsDir stringByAppendingPathComponent:@"sample.xml"];

// write to file atomically (using temp file)
[data writeToFile:storePath atomically:TRUE];

Если вы анализируете XML в NSArray или NSDictionary, лучше просто сохранить массив или словарь, чтобы вам не приходилось анализировать данные в кэше каждый раз, когда вы хотите их прочитать. И NSArray, и NSDictionary имеют методы writeToFile и initWithContentsOfFile

1 голос
/ 07 июня 2011

Вы можете использовать файл .plist для структурированного хранения XML. У меня это работает.

0 голосов
/ 28 октября 2011

Почему вы хотите использовать XML-файлы на iPhone?Существуют более эффективные способы обработки этих данных на устройстве.Возможно, вы захотите взглянуть на CoreData, который поддерживает SQLite и XML как постоянные хранилища.

Синтаксический анализ XML требует значительных ресурсов, особенно если XML становится очень большим.CoreData может помочь вам обойти аппаратные ограничения платформы iOS.

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