URL编码是一种常见的编码方式,作用不多说,直接上代码。

  • URL编码:
 - (NSString *)URLEncodedString
{// CharactersToBeEscaped = @":/?&=;+!@#$()~',*";// CharactersToLeaveUnescaped = @"[].";NSString *unencodedString = self;NSString *encodedString = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)unencodedString,NULL,(CFStringRef)@"!*'();:@&=+$,/?%#[]",kCFStringEncodingUTF8));return encodedString;
}
  • URL解码:
 - (NSString *)URLDecodedString
{NSString *result = [(NSString *)self stringByReplacingOccurrencesOfString:@"+" withString:@" "];return [result stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}

建议这两个方法放在NSString的分类中,并且声明为实例方法,这样可以直接用NSString的对象去调用。
- 调用示例:

NSString * string = @"zhansan啦啦啦啦1234567";
NSString * urlEncode = [string URLEncodedString];
NSString * urlDecode = [string URLDecodedString];
NSLog(@"urlEncode == %@",urlEncode);
NSLog(@"urlDecode == %@",urlDecode);
  • 打印结果:
urlEncode == zhansan%E5%95%A6%E5%95%A6%E5%95%A6%E5%95%A61234567
urlDecode == zhansan啦啦啦啦1234567

可见URL编码只对中文部分进行了编码。

iOS常用方法——URL编码和URL解码相关推荐

  1. 关于支付接口回调地址参数字段是“notify_url”,签名过后的特殊字符url编码以后再解码后出现错误(¬ , ¢, ¤, £)

    今天对接支付接口,参数拼接完了,开始调用的时候,一直报错,签名错误. 但是我用第三方给的签名测试mode测试签名,返回的是true. 这就非常他娘的奇怪. 经过一个个参数对比,我发现,notify_u ...

  2. 特殊字符url编码以后再解码后出现错误(not , cent, curren, pound)

    仅仅是在显示的时候,编码传送的时候不会影响 今天遇到一个问题 需要Url编码的原内容是 "&notify_url=xxxx"  经过url编码以后再解码回来  " ...

  3. JS javascript实现url编码和url解码(urlEncode urlDecode)

    本文转自:JS javascript实现url编码和url解码(urlEncode urlDecode)  转载请保留. 表单通过get方式提交中文数据时,提交的中文会被转化为类似"%CC% ...

  4. html url编码、url解码

    html   url编码.url解码 url编码:encodeURI(),encodeURIComponent() url解码:decodeURI(),decodeURIComponent() enc ...

  5. 字符url编码_HTML URL编码字符参考

    字符url编码 A URL is an address for a website. Just like postal addresses have to follow a specific form ...

  6. 【ASP】简单Url编码和Url解码实例

    描述:在数据传输或读取时,有些敏感数据不宜显示传输,特别涉及机密或财务信息,因此使用编码技术尤为重要. 简单实例: URL编码代码: protected void Button1_Click(obje ...

  7. Python url编码、url解码

    url编码 import urllib.parseu = "%E6%88%91%E7%88%B1%E4%B8%AD%E5%9B%BD" print("url编码:&quo ...

  8. python url编码_python url编码和解码

    一.为什么要进行Url编码 url带参数的请求格式为(举例): http://www.baidu.com/s?k1=v1&k2=v2 当请求数据为字典data = {k1:v1, k2:v2} ...

  9. OC URL编码和URL解码

    URL编码是一种常见的编码方式,作用不多说,直接上代码. URL编码: - (NSString *)URLEncodedString {// CharactersToBeEscaped = @&quo ...

最新文章

  1. 微信为什么打不开html,微信打不开怎么回事 微信打不开解决方法
  2. Appendix之setup.py:附录文件内容记录setup.py
  3. 湘财证券罗叶:数字化在金融领域的应用与实践,从“我觉得”到“用户觉得”...
  4. ospf与辅助接口实验
  5. 企业怎样做好计算机应急响应工作
  6. c++ 多态 运行时多态和编译时多态_C++核心编程 第十一节 多态
  7. 微擎pc 导入前缀_段覆盖前缀| 8086微处理器
  8. table单元格样式
  9. php 两位小数包含0,PHP保留两位小数 - osc_8dm0sbbd的个人空间 - OSCHINA - 中文开源技术交流社区...
  10. CSS快速学习10:高度自适应
  11. 什么是restful api
  12. lua学习 第二章数据与标准库
  13. python如何让输出数据对齐、int类型和字符串都有_Python基础-基本数据类型之数字、字符串...
  14. 对于“ …不需要安装.NET Framework 4.0 ” 以及 “已在此计算机上安装相同或更高版本的 .NET Framework 4 ” 等问题 的解决办法
  15. django系列9 --- 迁移相关
  16. 【一起入门NLP】中科院自然语言处理第13课-NLP基础任务④:序列生成问题(Seq2Seq)
  17. 查看 android打包证书签名
  18. mysql存储csv文件_MySQL 查询结果保存为CSV文件
  19. dom对象jquery对象
  20. 桌面虚拟化技术 KVM

热门文章

  1. 蔡琴-耶稣爱你(09布永康心灵不打烊布道会)
  2. Android Observe
  3. imagemagick的convert命令压缩图片
  4. 使用convert命令改变图片的分辨率
  5. 主机可以ping通外网,但是虚拟机不可以
  6. c++ A2W、W2A、A2T、T2A的使用方法
  7. 判断火车票座位-Python123编程题库答案-Python从入门到精通挑战台
  8. Tipard Blu-ray Player for Mac(高清蓝光播放器)
  9. Pyramid Squeeze Attention
  10. 徐荣谦《养好脾和肺 宝宝不积食不咳嗽长大个》【04】穴位健脾