Цель C - Написание NSString к списку - PullRequest
3 голосов
/ 13 февраля 2010

Я записываю NSString в файл plist, но после его записи в plist, и когда я пытаюсь открыть, я получаю следующее сообщение «Этот документ« mylist.plist »не может быть открыт Ошибка синтаксического анализатора XML: неожиданный символ 2 в строке 1 Ошибка синтаксического анализатора старого стиля: неожиданный ';' или '=' после ключа в строке 1 "

Вот мой код:

NSString *temp = [NSString stringWithFormat:@"%@\n Selection is %@ \n %d for %.2lf = %.2lf", [NSDate date], @"IPC", 2, 42.34, 2 * 42.34]; 
[temp writeToFile:[self getPathName:@"mylist.plist"] atomically:YES]; 

любая помощь будет оценена.

Спасибо,

Ответы [ 2 ]

3 голосов
/ 13 февраля 2010

-[NSString writeToFile...] не создает plist. Создает текстовый файл. Нет такой вещи как «запись строки в список». Только файлы NSArray и NSDictionary могут быть записаны в файлы plist. Затем они могут содержать NSString объекты (и другие объекты, такие как NSDate и NSData и т. Д.), Но то, что вы просите, невозможно.

Для получения дополнительной информации посмотрите Руководство по программированию списка свойств .

Редактировать: я должен уточнить, что я подразумеваю под "созданием списка". Когда я говорю это, я имею в виду XML-документы, определенные DTD Apple Plist: http://www.apple.com/DTDs/PropertyList-1.0.dtd

0 голосов
/ 13 февраля 2010

%@\n Selection is %@ \n %d for %.2lf = %.2lf определенно не в любом формате plist. Если вы хотите сохранить формат plist, используйте +[NSPropertyListSerialization dataFromPropertyList:...] для преобразования строки в данные в виде plist, затем сохраните данные.

И я не вижу смысла использовать plist, если вы храните только 1 строку. Вы можете просто сохранить как .txt и загрузить его, используя +[NSString stringWithContentsOfFile:...].

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