Как обработать путь к файлу Unicode в didFinishLaunchingWithOptions - PullRequest
0 голосов
/ 05 июля 2011

Я занимаюсь разработкой приложения, которое поддерживает просмотр файлов документов. Проблема в том, что у меня есть файл с именем на языке урду.
Когда я выбираю опцию «Открыть в MyApp» в приложении «Почта», файл копируется в папку «Входящие». Я хочу скопировать этот файл в другую папку. Я получаю путь к файлу из словаря launchOption и передаю его методу copyItemAt. Код для получения пути к файлу

NSURL *url = (NSURL *)[launchOptions valueForKey:UIApplicationLaunchOptionsURLKey];
NSString *urlStr = [url absoluteString];

А код для копирования файла

[[NSFileManager defaultManager] copyItemAtPath:urlStr toPath:destPath error:&error]

Но он возвращает ошибку «Нет такого файла или каталога». Я проверил, и файл правильно помещен в папку «Входящие» с именем на языке урду.

Пожалуйста, помогите. С наилучшими пожеланиями

1 Ответ

0 голосов
/ 05 июля 2011

Обычно пути имеют форму /../.../filename.extension, а URL-адреса файлов имеют форму file://../.../filename.extension.Когда вы используете absoluteString, вы получите тот же file://../.../filename.extension, что и строка.Вы должны отправить сообщение path.

NSString *urlStr = [url path];
...