Добавить NSString к NSURL? - PullRequest
       5

Добавить NSString к NSURL?

24 голосов
/ 14 марта 2011

У меня есть NSURL, путь к файлу, и я хочу добавить строку NSString (конец файла), как я могу это сделать? Но после этого я не хочу, чтобы все это было NSURL.

Спасибо.

Ответы [ 3 ]

105 голосов
/ 04 ноября 2011

Я думаю, что это хорошее решение:

NSURL *bUrl = [aUrl URLByAppendingPathComponent:@"newString"];

В Swift вы можете сделать следующее,

var bURL = aURL.URLByAppendingPathComponent( "newString" )

Вы также можете указать, является ли URL каталогом,

var bURL = aURL.URLByAppendingPathComponent( "newString", isDirectory: true )
8 голосов
/ 14 марта 2011

Я думаю, что это так же просто, как:

    NSString *s = [aUrl.path stringByAppendingString:@"newString"];
3 голосов
/ 19 мая 2016

Если у вас есть файл NSURL в каталоге, и вы хотите получить NSString, содержащую путь NSURL с добавленным к нему именем файла, используйте это:

NSURL *url = [NSURL fileURLWithPath:@"/System" isDirectory:YES];
NSString *filename = @"foo";
NSString *result = [url.path stringByAppendingPathComponent:filename];

Вы также можете использовать URLByAppendingPathComponent, но это добавляет дополнительный шаг, который создает дополнительный объект NSURL, который не нужен.

NSURL *url = [NSURL fileURLWithPath:@"/System" isDirectory:YES];
NSString *filename = @"foo";
NSURL *newURL = [url URLByAppendingPathComponent:filename];
NSString *result = newURL.path;
...