[iOS] URLEcode, URLDecode

iOS 涉及網絡編程的時候就需要與服務器存在httpurl 交互

如果說url中存在漢字,或者需要上傳圖片,那麼就得考慮urlEncode(否則會出現網址不對)

同樣接收到服務器返回的一些信息可能也存在同樣問題,這時服務器可能會返回urlEcode,客戶端就需要解碼urlDecode


其實方法很簡單,只需創建如下兩個方法即可


編碼  URLEncodedString

[objc] view plain copy
  1. -(NSString *)URLEncodedString:(NSString *)str  
  2. {  
  3.     NSString *encodedString = (NSString *)  
  4.     CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,  
  5.                                                               (CFStringRef)str,  
  6.                                                               NULL,  
  7.                                                               (CFStringRef)@"!*'();:@&=+$,/?%#[]",  
  8.                                                               kCFStringEncodingUTF8));  
  9.       
  10.     return encodedString;  
  11. }  


解碼  URLDecodedString

[objc] view plain copy
  1. -(NSString *)URLDecodedString:(NSString *)str  
  2. {  
  3.     NSString *decodedString=(__bridge_transfer NSString *)CFURLCreateStringByReplacingPercentEscapesUsingEncoding(NULL, (__bridge CFStringRef)str, CFSTR(""), CFStringConvertNSStringEncodingToEncoding(NSUTF8StringEncoding));  
  4.       
  5.     return decodedString;  
  6. }  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章