如何把带有文字的网址转换成%%E7%BE%8E%E5%B0%91%E5%A5%B3&

来源:互联网 发布:无锡汽车模具编程招聘 编辑:程序博客网 时间:2024/05/21 03:59

首次接触这个问题,搜索了1个多小时,终于解决了,为了帮助广大朋友,不再为此浪费时间,特此写下此博客。。。

Objective-C 对 URL 进行 URLEncode 编码,形如

//搜索http://api.playsm.com/index.php?lastCount=10102&page=1&r=prettyImages%2Flist&searchLabel=%E7%BE%8E%E5%B0%91%E5%A5%B3&

%E7%BE%8E%E5%B0%91%E5%A5%B3&,在中文含义是美少女,在搜索中,经常会把一个汉字字符串,转换成%E7%BE%8E%E5%B0%91%E5%A5%B3&这种形式,进行网络请求,那么怎么转换呢?


最早的方法是:NSString *encodeValue=[url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

可是ios9之后,用这种方法替代了他!

- (nullable NSStrin  *)stringByAddingPercentEncodingWithAllowedCharacters:(NSCharacterSet *)allowedCharactersNS_AVAILABLE(10_9, 7_0);这个NSCharacterSet是个类,里面有很多类方法,具体都是做什么,我也不太清楚,我们只需要知道这种用法

NSString *encodeValue=[self.contentTitlestringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSetURLQueryAllowedCharacterSet]];

,其中self.contentTitle,是想要转换的字符创,然后,在和接口拼接一下,就可以网络请求了!!!




1 0
原创粉丝点击