iPhone開發--使用Obj-C對資料等進行URLEncoding編碼
阿新 • • 發佈:2019-02-07
在Objective-c進行網路程式設計時,經常需要把資料轉換成URLEncoding編碼,如對+號編碼後,變成%2b.這裡我們給出一種實現.
//NSString+URLEncoding.h
#import
@interface NSString (URLEncodingAdditions)
- (NSString *)URLEncodedString;
- (NSString *)URLDecodedString;
@end
//NSString+URLEncoding.m
#import "NSString+URLEncoding.h"
@implementation NSString (OAURLEncodingAdditions)
- (NSString *)URLEncodedString
{
NSString *result = (NSString *)
CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
(CFStringRef)self,
NULL,
CFSTR("!*'();:@&=+$,/?%#[] "),
kCFStringEncodingUTF8);
[result autorelease];
return result;
}
- (NSString*)URLDecodedString
{
NSString *result = (NSString *)
CFURLCreateStringByReplacingPercentEscapesUsingEncoding(kCFAllocatorDefault,
(CFStringRef)self,
CFSTR(""),
kCFStringEncodingUTF8);
[result autorelease];
return result;
}
@end
因為是擴充套件了NSString,使用的時候就比較簡單了,首先在使用本類的檔案中引入NSString+URLEncoding.h標頭檔案,然後直接用NSString中的URLEncodedString與URLDecodedString方法,如:NSString *urlToken = [token URLEncodedString];
轉載自:http://www.voland.com.cn/urlencoding_for_objective-c