Подтвердить что ты не робот

Преобразование NSURL в локальный путь к файлу

У меня есть NSURL, который выглядит так:

file://localhost/Users/myuser/myfile.txt

Есть ли стандартная функция для преобразования его в локальный путь к файлу, который выглядит следующим образом:

/Users/myuser/myfile.txt
4b9b3361

Ответ 1

Используйте метод -[NSURL path]:

NSLog(@"%@", myUrl.path);

Из документации:

Путь к URL, не привязанный к методу stringByReplacingPercentEscapesUsingEncoding:. Если приемник не соответствует RFC 1808, возвращает nil.

Если этот URL-адрес содержит URL-адрес файла (как определено с помощью isFileURL), возвращаемое значение этого метода подходит для ввода в методы NSFileManager или NSPathUtilities. Если путь имеет конечную косую черту, он лишается.

В RFC 3986 ведущая косая черта после части полномочий (имя узла и порта) рассматривается как часть пути.

Обратите внимание, что вы можете создать такой URL с +[NSURL fileURLWithPath:].

Ответ 2

Swift 4:

absoluteURL.path 

или

yourUrl.path