• 对于URL中文和特殊字符的处理方法


    1.中文的处理方法

    NSString* string1 = @"https://www.cloudsafe.com/文件夹";
        
    NSString* string2 = [string1 stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    NSString* string3 = [string2 stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
        
    NSString* string4 = [string2 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    NSString* string5 = [string3 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
        
    NSString* string6 = [string4 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    NSString* string7 = [string5 stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
        
    输出结果: string5 & 6 重复编码encode
     
    string1:https://www.cloudsafe.com/文件夹
     
    string2:https://www.cloudsafe.com/%E6%96%87%E4%BB%B6%E5%A4%B9
    string3:https://www.cloudsafe.com/%25E6%2596%2587%25E4%25BB%25B6%25E5%25A4%25B9
     
    string4:https://www.cloudsafe.com/文件夹
    string5:https://www.cloudsafe.com/%E6%96%87%E4%BB%B6%E5%A4%B9
     
    string6:https://www.cloudsafe.com/文件夹
    string7:https://www.cloudsafe.com/文件夹

    2.特殊字符处理方式

    -(NSString *)UrlEncodedString:(NSString * )sourceText
    {
        NSString *result = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault,(CFStringRef)sourceText ,NULL ,CFSTR("!*'();:@&=+$,/?%#[]") ,kCFStringEncodingUTF8));
        return result;
    }
  • 相关阅读:
    加法原理和乘法原理
    布尔矩阵
    Codeforces Round #603 (Div. 2) A. Sweet Problem
    Codeforces Round #603 (Div. 2) D. Secret Passwords 并查集
    poj1611The Suspects并查集
    poj 2236 Wireless Network 并查集
    求斐波那契数的python语言实现---递归和迭代
    python语言实现阶乘的两种方法---递归和迭代
    栈实现二进制转十进制
    栈的基本操作
  • 原文地址:https://www.cnblogs.com/fuunnyy/p/5366299.html
Copyright © 2020-2023  润新知