zoukankan      html  css  js  c++  java
  • NSString+URLEncoding.h --使用Obj-C对数据等进行URLEncoding编码

    在Objective-c进行网络编程时,经常需要把数据转换成URLEncoding编码,如对+号编码后,变成%2b.这里我们给出一种实现.

    [cpp] view plaincopy
     

    //NSString+URLEncoding.h  

    1. #import   
    2. @interface NSString (URLEncodingAdditions)  
    3. - (NSString *)URLEncodedString;  
    4. - (NSString *)URLDecodedString;  
    5. @end</span>  
    [cpp] view plaincopy
     

    //NSString+URLEncoding.m  

    1. #import "NSString+URLEncoding.h"  
    2. @implementation NSString (OAURLEncodingAdditions)  
    3. - (NSString *)URLEncodedString  
    4. {  
    5.     NSString *result = (NSString *)  
    6.        CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,  
    7.                                                   (CFStringRef)self,  
    8.                                                   NULL,  
    9.                                                   CFSTR("!*'();:@&=+$,/?%#[] "),  
    10.                                                   kCFStringEncodingUTF8);  
    11.     [result autorelease];  
    12. return result;  
    13. }  
    14. - (NSString*)URLDecodedString  
    15. {  
    16.     NSString *result = (NSString *)  
    17.        CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault,  
    18.                         (CFStringRef)self,  
    19.                         CFSTR(""),  
    20.                         kCFStringEncodingUTF8);  
    21.     [result autorelease];  
    22. return result;  
    23. }  
    24. @end</span>  

    因为是扩展了NSString,使用的时候就比较简单了,首先在使用本类的文件中引入NSString+URLEncoding.h头文件,然后直接用NSString中的URLEncodedString与URLDecodedString方法,如:
    NSString *urlToken = [token URLEncodedString];

  • 相关阅读:
    设计模式之里氏替换原则
    设计模式之依赖倒置原则讲解
    条款10 若不想使用编译器自动生成的函数,就该明确拒绝
    Django---常用字段和参数
    Python中abc
    Python中鸭子类型
    Python多继承的正确打开方式:mixins机制
    python新式类和经典类的区别
    Django---drf权限、频率、过滤、排序、异常处理
    删库跑路技巧 删库跑路命令
  • 原文地址:https://www.cnblogs.com/kenshinobiy/p/4819259.html
Copyright © 2011-2022 走看看