objective-c – stringByAddingPercentEscapesUsingEncoding逃脱的字符是什么?

前端之家收集整理的这篇文章主要介绍了objective-c – stringByAddingPercentEscapesUsingEncoding逃脱的字符是什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我不得不从stringByAddingPercentEscapesUsingEncoding切换到CFURLCreateStringByAddingPercentEscapes,因为它不会转义问号(?).我很好奇它究竟逃脱了什么,以及部分转义与RFC 3986背后的基本原理.

解决方法

已经创建了一些很好的类别来满足您的需求:
http://iosdevelopertips.com/networking/a-better-url-encoding-method.html
http://www.cocoanetics.com/2009/08/url-encoding/

保留某些字符的理由超出了我…除了说函数的定义是:使用给定的编码返回接收器的表示,以确定将接收器转换为合法URL字符串所需的转义百分比.

要完全正确,并且&是URL中的合法字符,而空格则不是.因此,该方法将正确地逃离空间,但离开和&完整.

阅读RFC2396 http://www.ietf.org/rfc/rfc2396.txt – 定义了一组保留和未保留的字符.我的猜测是这些字符都没有被stringByAddingPercentEscapesUsingEncoding转义.

猜你在找的C&C++相关文章