直接用URLWithString来拼接NSURL有时候得到的NSURL是为nil的

简介: <p style="margin-top:0px; margin-bottom:0px; padding-top:0px; padding-bottom:0px; font-family:Arial; font-size:14px; line-height:26px"> <span style="font-size:18px">今天在使用URLWithString拼接NSURL的时候出现

今天在使用URLWithString拼接NSURL的时候出现了nil:

NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@%@?%@",host_url,baseurl,postURL]];


查了一下原因:

This method expects URLString to contain any necessary percent escape codes, which are ‘:’, ‘/’, ‘%’, ‘#’, ‘;’, and ‘@’. Note that ‘%’ escapes are translated via UTF-8.



大概的意思是说,转义方面的,但并非我这里拼接为nil的原因。不过他给的解决方案缺让我最终拼接的NSURL不为nil了。。


所以以后在使用URLWithString来拼接NSURL尽量这样用:
// 这样用,就不容易出现像上面的问题
        NSString *urlStr = [NSString stringWithFormat:@"%@%@?%@", host_url, baseurl, postURL];
        urlStr = [urlStr stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
        NSURL *url = [NSURL URLWithString:urlStr];


这样就不容易出现URLWithString拼接NSURL为nil的情况,至少我这里就不会出现了。。
目录
相关文章
|
Java 编译器
Java字符串拼接选择的三种方式
Java字符串拼接选择的三种方式
92 0
|
PHP 调度 数据安全/隐私保护
【源码解读】TP5读取本地图片输出后,设置header头无效,图片乱码
在Thinkphp程序中读取本地图片,做出加工处理(如合并二维码等水印),然后输出给客户端,一直输出图片内容乱码。 设置了header image/png 不生效。 写下这篇TP源码排查文章,看看问题到底出现在哪个步骤。
603 0
【源码解读】TP5读取本地图片输出后,设置header头无效,图片乱码
路径拼接和系统判断
路径拼接和系统判断
|
10月前
|
弹性计算 运维 Shell
实现文件存在与否的判断
【4月更文挑战第30天】
61 1
|
PHP
php模版引擎smarty中判断数组是否为空自动输输出
php模版引擎smarty中判断数组是否为空自动输输出
101 0
连nil切片和空切片一不一样都不清楚?那BAT面试官只好让你回去等通知了。
连nil切片和空切片一不一样都不清楚?那BAT面试官只好让你回去等通知了。
82 0
strtok---切割字符串 解析,实例及具体用法,注意事项等
strtok---切割字符串 解析,实例及具体用法,注意事项等
103 0
strtok---切割字符串 解析,实例及具体用法,注意事项等
|
存储 安全 前端开发
Go-字符和字符串类型详解(原始字符串、拼接、修改、比较、拆分、查找等)
Go-字符和字符串类型详解(原始字符串、拼接、修改、比较、拆分、查找等)
179 0
Go-字符和字符串类型详解(原始字符串、拼接、修改、比较、拆分、查找等)
|
开发者 Python
字符串查找判断和替换相关的方法|学习笔记
快速学习字符串查找判断和替换相关的方法
|
JavaScript PHP
通过PHP将给定的字符串进行复制并输出新字符串
哈喽,大家好!在上一篇文章《你知道怎么在PHP中创建可选参数吗?》中给大家介绍了怎么在PHP中创建可选参数,感兴趣的朋友可以学习学习~ 今天本文将给大家介绍怎么通过PHP将给定的字符串进行复制并输出新字符串! 有的朋友可能还不太理解这个标题,什么复制?又输出新字符串? 不着急,大家看看问题的详细描述就知道了! 具体问题是“编写一个PHP程序来创建一个新字符串,该字符串是给定字符串的 n(非负整数)倍,比如字符串ab->变成ababab(可以说是原字符串的三倍)”?
261 0