web-dev-qa-db-fra.com

Récupérer le nom de fichier de nsurl

J'ai une URL

http://www.hdwallpapers.in/walls/honda_v4_concept_widescreen_bike-wide.jpg

Je veux extraire le nom du fichier qui est "honda_v4_concept_widescreen_bike-warth.jpg"

Comment puis-je peut-être faire cela?

29
farisolusa

Le code ci-dessous devrait fonctionner. Mise à jour, donc j'ai supprimé la déclaration supérieure. J'aurais pu utiliser Nstring VS Const Char * ou STD :: String de C++ mais les pointeurs de caractères C pensés seraient tout à fait appropriés pour ce cas.

Aussi réorganisé cela, donc c'est dans sa propre fonction concise:

-(NSString*) extractFile:(const char*) url 
{
    NSURL *yourURL = [NSURL URLWithString:
                     [NSString stringWithCString:url 
                                 encoding:NSUTF8StringEncoding]];
    return [yourURL lastPathComponent];
}

à utiliser :

const char *path_ = "http://www.hdwallpapers.in/walls/honda_v4_concept_widescreen_bike-wide.jpg";
NSLog(@"\t\tYour Extracted file: \n\t%@", [self extractFile:path_]);
50
Apollo SOFTWARE

Le code ci-dessous fonctionne. L'absolutetring est recommandée dans une autre réponse, mais cela ne fonctionne pas correctement s'il y a (par exemple) dans le nom de fichier.

NSString *JPEGfilename = [[yourURL path] lastPathComponent];
1
Nestor