我想在Url的imageview中显示图片,并且名称中有空格......
// NSString* imageURL = @"http://dev.squealrs.com/imaging.php/image-name.jpg?height=45&noimg=100&image=/wp-content/uploads/sqbrands/GMT-July-cover1344489425.jpg";
NSString* imageURL = @"http://dev.squealrs.com/imaging.php/image-name.jpg?height=45&noimg=100&image=/wp-content/uploads/sqbrands/Sookie Stackhouse small1343970416.jpg";
NSData* imageData = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:imageURL]];
UIImage* image = [[UIImage alloc] initWithData:imageData];
[ImageWithspace setImage:image];
但没有显示图像bcoz未注释imageURL在imagename中包含空格,如果我使用注释的imageURL而不是在imageview中显示图像:( ....给我一些解决方案
答案 0 :(得分:5)
您需要对网址进行编码:
NSString *encoded = [imageURL stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
答案 1 :(得分:0)
在使用URL创建NsURL之前,您需要对URL进行编码。有一个内置类可以帮助您编码字符串。
以下是编码与NSURL一起使用的字符串的示例:NSURL Encoding in ObjC
答案 2 :(得分:0)
NSURL *url = [[NSURL alloc] initWithString:[myurlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
这是因为url中的空格未被处理,因此使用了百分比编码
答案 3 :(得分:0)
NSString* imageURL = @"http://dev.squealrs.com/imaging.php/image-name.jpg?height=45&noimg=100&image=/wp-content/uploads/sqbrands/Sookie Stackhouse small1343970416.jpg";
NSString *spaceUrl = [[NSString stringWithFormat:imageURL] stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
spaceUrl = [spaceUrl stringByReplacingOccurrencesOfString:@" " withString:@"%20"];
NSData* imageData = [[NSData alloc]initWithContentsOfURL:[NSURL URLWithString:spaceUrl]];
UIImage* image = [[UIImage alloc] initWithData:imageData]
[ImageWithspace setImage:image];
只需复制粘贴此代码即可。如果您还有问题,请随时询问