J'ai un NSURL qui ressemble à ceci:
fichier: //localhost/Users/myuser/myfile.txt
Existe-t-il une fonction standard pour le convertir en un chemin de fichier local ressemblant à ceci:
/Users/myuser/myfile.txt
Utilisez le -[NSURL path]
méthode:
NSLog(@"%@", myUrl.path);
De la documentation:
Le chemin de l'URL, non échappé avec le
stringByReplacingPercentEscapesUsingEncoding:
méthode. Si le récepteur n'est pas conforme à la RFC 1808, retournenil
.Si cet objet URL contient une URL de fichier (comme déterminé avec
isFileURL
), la valeur de retour de cette méthode convient pour une entrée dans les méthodes de NSFileManager ou de NSPathUtilities. Si le chemin comporte une barre oblique finale, il est supprimé.Selon la RFC 3986, la barre oblique après la partie autorité (nom d'hôte et port) est traitée comme faisant partie du chemin.
Notez que vous pouvez créer une telle URL avec +[NSURL fileURLWithPath:]
.
Swift 4:
absoluteURL.path
ou
yourUrl.path