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];

  • 相关阅读:
    gcc 不同平台不同宏写法 Function Multiversioning
    linux win10 挂载 C盘 系统盘 ntfs 问题 休眠 快速启动关闭了
    archlinux wine
    ssm批量操作易错点
    行政区划代码
    ssm获取session
    layui 批量删除点击不起作用
    layui分页失效问题
    java 获取服务器配置信息【使用sigar、sql语句、ServerInfo】
    ssm中html跳转之后乱码
  • 原文地址:https://www.cnblogs.com/kenshinobiy/p/4819259.html
Copyright © 2011-2022 走看看