当前位置: 移动技术网 > 移动技术>移动开发>IOS > IOS中对Url进行编码和解码示例

IOS中对Url进行编码和解码示例

2019年07月24日  | 移动技术网移动技术  | 我要评论

本文主要介绍ios中对url进行编码和解码示例,具体如下:

1.非arc模式下

+ (nsstring *)encodetopercentescapestring: (nsstring *) input {    // encode all the reserved characters, per rfc 3986    // ()

nsstring *outputstr = (nsstring *)cfurlcreatestringbyaddingpercentescapes(kcfallocatordefault,(cfstringref)input,null,(cfstringref)@"!*'();:@&=+$,/?%#[]",

kcfstringencodingutf8);

return outputstr;

}

+ (nsstring *)decodefrompercentescapestring: (nsstring *) input {

nsmutablestring *outputstr = [nsmutablestring stringwithstring:input];

[outputstr replaceoccurrencesofstring:@"+"

withstring:@" "

options:nsliteralsearch

range:nsmakerange(0, [outputstr length])];

return [outputstr stringbyreplacingpercentescapesusingencoding:nsutf8stringencoding];

2. arc模式下

- (nsstring *)encodetopercentescapestring: (nsstring *) input{  nsstring* 
outputstr = (__bridge nsstring *)cfurlcreatestringbyaddingpercentescapes(


                       null, /* allocator */

                       (__bridge cfstringref)input,

                       null, /* characterstoleaveunescaped */

                       (cfstringref)@"!*'();:@&=+$,/?%#[]",

                       kcfstringencodingutf8);
return
 outputstr;}- (nsstring *)decodefrompercentescapestring: (nsstring *) input
{nsmutablestring *outputstr = [nsmutablestring stringwithstring:input];[outputstr replaceoccurrencesofstring:@"+"withstring:@"
"options:nsliteralsearchrange:nsmakerange(0,
 [outputstr length])];return
 [outputstr stringbyreplacingpercentescapesusingencoding:nsutf8stringencoding];}


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网