url出现特殊字符,需要进行编码

1) 网络访问请求:中文空格字符编码/解码

stringByAddingPercentEscapesUsingEncoding(只对 `#%^{}[]|\"<> 加空格共14个字符编码,不包括”&?”等符号), ios9将淘汰,建议用stringByAddingPercentEncodingWithAllowedCharacters方法

URLFragmentAllowedCharacterSet "#%<>[\]^`{|}

URLHostAllowedCharacterSet "#%/<>?@\^`{|}

URLPasswordAllowedCharacterSet "#%/:<>?@[\]^`{|}

URLPathAllowedCharacterSet "#%;<>?[\]^`{|}

URLQueryAllowedCharacterSet "#%<>[\]^`{|}

URLUserAllowedCharacterSet "#%/:<>?@[\]^`

(2)网络访问请求:中文空格字符解码

stringByRemovingPercentEncoding ---- xcode7可能会提示要将stringByAddingPercentEscapesUsingEncoding替换成此方法,要根据是否是解码来区分

*/
//代替stringByAddingPercentEscapesUsingEncoding

let customAllowedSet = NSCharacterSet(charactersInString:"`#%^{}\"[]|\\<> ").invertedSet

例如:

           NSString *urlStr = [NSString stringWithFormat:@"%@/uploadFeedback?sessionID=%@&content=%@", kMainURL, [MySharedClass      sharedInstance].sessionID, _textView.text];

  

          urlStr = [urlStr stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

posted @ 2015-11-24 20:06  fengkuangIT  阅读(1856)  评论(0编辑  收藏  举报