Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 转义用于url内部的特殊字符(ø;,æ;)_Iphone_Objective C_Xcode - Fatal编程技术网

Iphone 转义用于url内部的特殊字符(ø;,æ;)

Iphone 转义用于url内部的特殊字符(ø;,æ;),iphone,objective-c,xcode,Iphone,Objective C,Xcode,我尝试在iOS应用程序中显示带有URL源的图像,但它没有显示 图像的url是实时示例路径 使用以下Objective-C代码转义此字符串时: NSString *url= [(NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)originalpath, NULL, CFSTR("øæ"), kCFStringEncodingUTF8) autorelease]; 结果是(编

我尝试在iOS应用程序中显示带有URL源的图像,但它没有显示

图像的url是实时示例路径

使用以下Objective-C代码转义此字符串时:

 NSString *url= [(NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)originalpath, NULL, CFSTR("øæ"), kCFStringEncodingUTF8) autorelease];
结果是(编码为øæ):livexml路径

存储URL的所有my文件都使用文本编码(UTF-8)


如何以正确的方式转义URL,以便显示图像?

我认为在将其用作URL之前,您需要转义URL字符串

NSString *URLString = [yourImagepath stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
NSURL *url = [NSURL URLWithString:URLString];

德国umlauts在iOS上也有同样的问题。
NSURL
类别为我解决了这个问题,不要被C代码的数量吓坏了,它隐藏得很好:)

不要使用ascii编码试试看

NSString *URLString = [yourImagepath stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString:URLString];

我希望它能帮到你。

Downvote:这正是文章作者已经做过的事情——在问题的文本中也可以看到……兄弟,我应该在我的项目中添加两个文件NSURL+IFUnicodeURL(.h和.m)。下载的文件中包含太多文件。请引导我完成:)只需删除项目中的所有内容,包括
IDNSDK
文件夹。这包含实际的Unicode转换库,类别在内部使用它们。谢谢Zohaib先生。很好的解决方案。它工作得很好。很抱歉堆栈溢出不允许多个一次升级,这个答案真的值得。