iPhone: отсутствует метод? NSDictionary dictionaryWithData: - PullRequest
0 голосов
/ 10 июля 2010

Веб-сервис предоставляет данные в виде списка.После загрузки у меня есть все данные в объекте NSData, которые я хочу преобразовать в NSDictionary.Прямо сейчас единственный известный мне способ сделать это без разбора вручную (yuck) - это:

static NSString *fileName = @"tempFile";
[data writeToFile: fileName atomically: NO];
NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile: fileName];

Я удивлен, что NSDictionary не имеет dictionaryWithData: метод.Я бы даже не стал сначала преобразовывать NSData в NSString, если бы DictionaryWithString: существовал.Ясно, что SDK делает что-то похожее под капотом, но он не доступен для разработчиков.

Кто-нибудь может предложить лучший способ сделать это?Один из файлов, которые мне нужно преобразовать, потенциально может быть довольно большим, и выполнение операций записи в файл + чтения из файла может быть немного медленным.

1 Ответ

2 голосов
/ 10 июля 2010

Используйте одно из следующего:

+[NSPropertyListSerialization propertyListFromData:mutabilityOption:format:errorDescription:]
+[NSPropertyListSerialization propertyListWithData:options:format:error:]

Первое доступно в iOS 2.0+, но устарело в 4.0.

...