J'ai le code suivant dans ma demande.
NSData *data=[NSData dataWithContentsOfURL:[NSURL URLWithString:pathOfThumbNail]];
pathofthumbnail a suivi du chemin
http://70.84.58.40/projects/igolf/tipthumb/golf 58b.jpg
Lorsque j'ouvre au-dessus de la trajautrine dans le navigateur Safari - Chemin est modifié automatiquement et l'image est affichée avec succès.
http://70.84.58.40/projects/igolf/tipthumb/golf%2058b.jpg
Mais dans iPhone, en raison de l'espace dans le chemin, l'image n'est pas chargée dans Nsdata.
UTILISATION: STRESSIONDADINDINGPENDESCAPESESUSECODING:
Renvoie une représentation du récepteur à l'aide d'un codage donné pour déterminer le pourcentage d'échappement nécessaire pour convertir le récepteur en une chaîne d'URL légale.
-(NSString *)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)encoding
Une représentation du récepteur utilisant le codage pour déterminer le pourcentage d'échappement nécessaire pour convertir le récepteur en une chaîne d'URL légale. Retourne nil si le codage ne peut pas encoder un caractère particulier
Ajouté par demande par @rule
NSString* urlText = @"70.84.58.40/projects/igolf/TipThumb/GOLF 58B.jpg";
NSString* urlTextEscaped = [urlText stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString: urlTextEscaped];
NSLog(@"urlText: '%@'", urlText);
NSLog(@"urlTextEscaped: '%@'", urlTextEscaped);
NSLog(@"url: '%@'", url);
Sortie NSLog:
( .] URL: '70 .84.58.40/Projets/igolf/Tipthumb/Golf% 2058b.jpg '[.____]
A Swift 3.0 (StringByAddingDinderCenterCasesDingingCoding et StringByAddingCenterCodingCodingComment -AllaracTracters semble maintenant déprécié):
let urlString ="your/url/".addingPercentEncoding( withAllowedCharacters: .urlQueryAllowed)
stringByAddingPercentEscapesUsingEncoding
a été obsolète dans iOS 9.0, il est recommandé d'utiliser stringByAddingPercentEncodingWithAllowedCharacters
à la place.
Voici le code de l'objectif-c pour> iOS 9.0
NSString* urlText = @"70.84.58.40/projects/igolf/TipThumb/GOLF 58B.jpg";
NSString* urlTextEscaped = [urlText stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];
NSURL *url = [NSURL URLWithString: urlTextEscaped];
NSLog(@"urlText: '%@'", urlText);
NSLog(@"urlTextEscaped: '%@'", urlTextEscaped);
NSLog(@"url: '%@'", url);