zoukankan      html  css  js  c++  java
  • 对于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;
    }
  • 相关阅读:
    隐藏TabControl的标签 上海
    最近写的一个存储过程 上海
    DBUS 介绍 上海
    存储过程 几个小例子 上海
    C# BHO 上海
    EXEC和sp_executesql的区别 上海
    office文档转换成mht文档(准备、原理篇) 上海
    Dictionary 排序 上海
    .Net 开源资源 上海
    Geant4.9.5.p01 in ubuntu12.04 OpenGL driver.
  • 原文地址:https://www.cnblogs.com/fuunnyy/p/5366299.html
Copyright © 2011-2022 走看看