NSURL URLWithString: myString retourne Nil?
j'ai une chaîne de caractères de mon url.. Je veux les données de cette url. Pour cela j'ai besoin de créer un objet de NSURL
. Le problème est alors que j'essaie <!-La méthode de la classe NSURL renvoie zéro. Mais quand j'ouvre ce lien dans Safari de mon Mac il m'affiche l'Image.
je suis à l'aide ..
NSString *str = @"http://chart.apis.google.com/chart?chs=150x150&cht=qr&chld=L|0&chl=http://MyServer.com/shareMyCard.php?value=1304057103";
NSURL *url = [NSURL URLWithString:str];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *img = [UIImage imageWithData:data];
Je ne sais pas pourquoi L'URL est nulle. Je pense à cause de chaîne de requête dans ma chaîne.
N'importe quelle idée de la façon d'obtenir des données à partir de cette chaîne D'Url.
Merci
9
demandé sur
Kapil Choubisa
2011-04-30 09:53:10
1 réponses
votre URL est nulle parce qu'elle contient des caractères spéciaux, utilisez cette fonction suivante pour encoder vos paramètres d'url avant de les utiliser dans URL -
-(NSString *) URLEncodeString:(NSString *) str
{
NSMutableString *tempStr = [NSMutableString stringWithString:str];
[tempStr replaceOccurrencesOfString:@" " withString:@"+" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [tempStr length])];
return [[NSString stringWithFormat:@"%@",tempStr] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
32
répondu
Saurabh
2011-04-30 06:04:25