【问题标题】:Loading images from URL with special characters isn't working从带有特殊字符的 URL 加载图像不起作用
【发布时间】:2014-12-10 17:08:58
【问题描述】:

我正在开发一个通过网络服务查找项目的应用程序。在结果信息中,有一些图像 URL,然后我使用这些 URL 来显示图像。

一切都完美无缺,除非图片的 URL 中有特殊字符。

这是我正在使用的基本代码:

NSData * data = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithString: @"http://FULLURL/image-é.jpg"]];

 cell.cellView.image = [UIImage imageWithData: data];

当 URL 包含特殊字符时,data 变量始终为 nil,但在没有特殊字符时有效。

我尝试了几种使用 NSUTF8StringEncoding 和 NSASCIIStringEncoding 对字符串进行编码的方法,但都没有成功。数据变量始终为零。

【问题讨论】:

  • 分享实际的 URL,以便我可以尝试。

标签: ios xcode xcode6


【解决方案1】:

我使用 en.wikipedia.org/wiki/É 作为我的 URL 来测试这一点。试试这个代码:

NSString *string = [@"http://en.wikipedia.org/wiki/É" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString:string];
NSData *data = [[NSData alloc] initWithContentsOfURL:url];

【讨论】:

  • 效果很好。当我尝试它时,我一定没有正确获得编码。感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-27
  • 2018-07-10
  • 1970-01-01
相关资源
最近更新 更多