ios Url链接中含有中文换行或%-等特殊字符转码

2017-08-11  本文已影响404人  GGRay

平时在后台返回的链接中,经常会出现中文或者特殊字符,需要我们进行转码,否则不能正确的显示或者跳转,这个时候不能奢求后台那边转码给我们,而是我们需要行程一个习惯,在我们加载这个url链接之前进行一次转码操作,而经过大量实验,下面的方式是最有效好用实用的转码方式:
NSString *encodedString = (NSString *)

CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,

                                                          (CFStringRef)needTranslateUrlString,
                                                          
                                                          (CFStringRef)@"!$&'()*+,-./:;=?@_~%#[]",
                                                          
                                                          NULL,
                                                          
                                                          kCFStringEncodingUTF8));

或者:
//针对中文
[urlStr stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

//规定特殊字符或者换行
[urlStr stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet characterSetWithCharactersInString:@"!$&'()*+,-./:;=?@_~%#[]"]];
小伙伴们可以尝试一下。

上一篇 下一篇

猜你喜欢

热点阅读