Найти родительский каталог пути - PullRequest
29 голосов
/ 21 августа 2009

Есть ли способ найти родительский каталог пути, используя NSFileManager или что-то еще?

например. Возьми это:

* +1006 * / путь / к / * то 1007 *

И превратить его в

/ путь / к /

Ответы [ 3 ]

65 голосов
/ 21 августа 2009

Метод NSString -stringByDeletingLastPathComponent делает именно это.

Вы можете использовать его так:

NSLog(@"%@", [@"/tmp/afolder" stringByDeletingLastPathComponent]);

И будет логин /tmp.

15 голосов
/ 31 марта 2014

Обычно URL-адреса файлов имеют тип NSURL. Теперь есть метод, который вы можете использовать, чтобы получить родительский каталог: NSURL *parentDirectory = [fileURL URLByDeletingLastPathComponent];

3 голосов
/ 08 января 2017

Вы должны использовать URL для расположения файлов. Если у вас есть путь в виде строки, я бы преобразовал его в URL. Для Swift 3 используйте

let fileURL: URL = URL(fileURLWithPath: "/path/to/something")
let folderURL = fileURL.deletingLastPathComponent()
...