NSString stringWithContentsOfURL устарела. Что я должен делать? - PullRequest
8 голосов
/ 12 апреля 2011

Я написал некоторый код, который использует stringWithContentsOfURL, но оказалось, что он устарел. Можете ли вы помочь мне заменить его? Вот мой код:

NSString *locationString = [NSString stringWithContentsOfURL:[NSURL URLWithString:urlString]];
NSArray *listItems = [locationString componentsSeparatedByString:@","];

Кроме того, может кто-нибудь иметь пример кода, чтобы показать, как он работает? В какой кодировке был сделан исходный код (в моих 2 строках выше)?

Я хочу сохранить совместимость, так что мне выбрать для кодировки? Что означает ошибка и для чего она используется?

Ответы [ 2 ]

21 голосов
/ 12 апреля 2011

Использование stringWithContentsOfURL:encoding:error:

РЕДАКТИРОВАТЬ: Вот ваш код, используя вышеуказанный метод:

NSError *error = nil;
NSString *locationString = [NSString stringWithContentsOfURL:[NSURL URLWithString:urlString] encoding:NSUTF8StringEncoding error:&error];
NSArray *listItems = [locationString componentsSeparatedByString:@","];

Вы можете изменить NSUTF8StringEncoding соответственно для любых данных, которые вы импортируете.

1 голос
/ 12 апреля 2011

Ссылка NSString говорит это:

Используйте stringWithContentsOfURL:encoding:error: или stringWithContentsOfURL:usedEncoding:error: вместо.

...