objective-c macos nsstring append nsurl

objective c - ¿Agregar NSString a NSURL?



objective-c macos (3)

Creo que es tan simple como:

NSString *s = [aUrl.path stringByAppendingString:@"newString"];

Tengo un NSURL, una ruta de archivo, y quiero agregar una NSString al final de la misma (el nombre del archivo) ¿cómo puedo hacer esto? Pero después de esto, no quiero que todo sea un NSURL.

Gracias.


Creo que es una buena solución:

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

En Swift podías hacer lo siguiente,

var bURL = aURL.URLByAppendingPathComponent( "newString" )

También puede indicar si la URL es un directorio,

var bURL = aURL.URLByAppendingPathComponent( "newString", isDirectory: true )


Si tiene un archivo NSURL en un directorio y desea terminar con una NSString que contiene la ruta de acceso del NSURL con un nombre de archivo agregado, use esto:

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

También puede usar URLByAppendingPathComponent pero eso agrega un paso adicional que crea un objeto NSURL adicional que no es necesario.

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