您的位置:首页 > 移动开发 > IOS开发

iOS UTF-8、URL解码与转码

2015-08-04 10:57 429 查看
UTF-8解码

NSString* str= [@"%E4%B8%AD%E5%9B%BD" stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"strAfterDecodeByUTF8AndURI=%@", str);


UTF-8转码

[@"我是中文" stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];


URL编码

非ARC

+(NSString *)getUrlStringFromString:(NSString *)aStr{
NSString *outputStr = (NSString *)
CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
(CFStringRef)aStr,
NULL,
(CFStringRef)@"!*'();:@&=+$,/?%#[]",
kCFStringEncodingUTF8);
return outputStr;
}


ARC

+(NSString *)getUrlStringFromString:(NSString *)urlStr{
NSString *outputStr = (__bridge NSString *)
CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,
(__bridge CFStringRef)urlStr,
NULL,
(CFStringRef)@"!*'();:@&=+$,/?%#[]",
kCFStringEncodingUTF8);
return outputStr;
}


URL解码

+ (NSString *)decodeFromPercentEscapeString: (NSString *) urlStr
{
NSMutableString *outputStr = [NSMutableString stringWithString:urlStr];
[outputStr replaceOccurrencesOfString:@"+"
withString:@""
options:NSLiteralSearch
range:NSMakeRange(0,
[outputStr length])];

return [outputStr stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: