首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“NSStringEncoding”(又称“无符号长”)到“NSCharacterSet*_Nonnull”的隐式转换被禁止

“NSStringEncoding”(又称“无符号长”)到“NSCharacterSet*_Nonnull”的隐式转换被禁止
EN

Stack Overflow用户
提问于 2017-11-03 04:39:49
回答 1查看 747关注 0票数 0

在下面的代码中,我得到了错误消息:“NSStringEncoding”(又名“无符号long”)到“NSCharacterSet*_Nonnull”的隐式转换是不允许的。

我做错了什么?

代码语言:javascript
复制
NSURL *candidatesURL = [NSURL URLWithString:[str_url
                                             stringByAddingPercentEncodingWithAllowedCharacters:NSUTF8StringEncoding]];
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-03 04:44:14

你用错了方法。不要使用stringByAddingPercentEncodingWithAllowedCharacters,而要使用此stringByAddingPercentEscapesUsingEncoding

如果不使用此方法,stringByAddingPercentEncodingWithAllowedCharacters,则必须传递一组允许的字符。

尝尝这个。

代码语言:javascript
复制
NSURL *candidatesURL = [NSURL URLWithString:[str_url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];

或者,如果你的应用程序开发目标是IOS 9.0及以上。

不推荐使用stringByAddingPercentEscapesUsingEncoding,因此您可以使用stringByAddingPercentEncodingWithAllowedCharactersURLHostAllowedCharacterSet

代码语言:javascript
复制
NSURL *candidatesURL = [NSURL URLWithString:[str_url stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLHostAllowedCharacterSet]];
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47088582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档