Objective C NSString 编码成URL 特殊字符处理

找了一下网上的教程都是使用类似以下代码,Xcode提示这个CoreFoundation不受ARC管理,所以折中的方式是添加__bridge.

    NSString *encodedValue = (__bridge NSString *)CFURLCreateStringByAddingPercentEscapes(nil,

                                                                                (CFStringRef)unencodedString, nil,

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

但是其实有很好的一个解决方案

    NSString *encodedValue=[unencodedString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet alphanumericCharacterSet]];

使用NSString内置的API即可。

posted @ 2016-08-17 12:05  Yellowman  阅读(691)  评论(0编辑  收藏  举报
TVRBMExqRXlPQzR5TXpjdU1UVTEK\n