首页 > 系统 > iOS > 正文

IOS中对Url进行编码和解码示例

2020-07-26 03:04:02
字体:
来源:转载
供稿:网友

本文主要介绍IOS中对Url进行编码和解码示例,具体如下:

1.非ARC模式下

+ (NSString *)encodeToPercentEscapeString: (NSString *) input {    // Encode all the reserved characters, per RFC 3986    // ()NSString *outputStr = (NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)input,NULL,(CFStringRef)@"!*'();:@&=+$,/?%#[]",kCFStringEncodingUTF8);return outputStr;}+ (NSString *)decodeFromPercentEscapeString: (NSString *) input {NSMutableString *outputStr = [NSMutableString stringWithString:input];[outputStr replaceOccurrencesOfString:@"+"withString:@" "options:NSLiteralSearchrange:NSMakeRange(0, [outputStr length])];return [outputStr stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

2. ARC模式下

- (NSString *)encodeToPercentEscapeString: (NSString *) input{  NSString* outputStr = (__bridge NSString *)CFURLCreateStringByAddingPercentEscapes(                       NULL, /* allocator */                       (__bridge CFStringRef)input,                       NULL, /* charactersToLeaveUnescaped */                       (CFStringRef)@"!*'();:@&=+$,/?%#[]",                       kCFStringEncodingUTF8);return outputStr;}- (NSString *)decodeFromPercentEscapeString: (NSString *) input{NSMutableString *outputStr = [NSMutableString stringWithString:input];[outputStr replaceOccurrencesOfString:@"+"withString:@""options:NSLiteralSearchrange:NSMakeRange(0, [outputStr length])];return [outputStr stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];}


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表