美文网首页
ios 对URL字符串编解码

ios 对URL字符串编解码

作者: liang1030 | 来源:发表于2020-04-27 16:25 被阅读0次

1,解码:

//iOS9.0(包括9.0)以上使用
NSString *decodeUrl = [str stringByRemovingPercentEncoding]; 

//iOS9.0以下使用
NSString *decodeUrl = [str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

2,编码

//iOS9.0(包括9.0)以上使用
NSString *encodeUrl = [str stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

//iOS9.0以下使用

NSString *encodeUrl = [str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

3,过滤掉特殊字符编码

/**
*  @brief  编码URL字符串 过滤-_.!~*;/?:@&=+$,#
*
*  @return 编码后的URL
*/
-(NSString *)encodeUrlString {
    NSString * urlNoBlank = [self trim];
    NSMutableCharacterSet *lastSet = [[NSMutableCharacterSet alloc] init];
    [lastSet formUnionWithCharacterSet:[NSCharacterSet characterSetWithCharactersInString:@"-_.!~*;/?:@&=+$,#"]];
    [lastSet formUnionWithCharacterSet:[NSCharacterSet letterCharacterSet]];
    [lastSet formUnionWithCharacterSet:[NSCharacterSet alphanumericCharacterSet]];
    NSString * escapedQueryWord = [urlNoBlank stringByAddingPercentEncodingWithAllowedCharacters:lastSet];
    return escapedQueryWord;
}

相关文章

网友评论

      本文标题:ios 对URL字符串编解码

      本文链接:https://www.haomeiwen.com/subject/kyquwhtx.html