• 转义URL 含有中文和特殊符号


     方法1:

        //这个方法被废弃了

      NSString *urlString = @"https://www.cnblogs.com/huaida/#/程序员"; 

        NSString* encodedString1 = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

        NSLog(@"encodedString1 %@",encodedString1); //这个方法一般能解决url中含有中文字符的问题,效果同上,但是同时有中文和特殊字符的话,特殊字符会被转换成%234这样的字符串,又出问题了。o(╯□╰)o

     方法2:

        NSString* encodedString2 = [urlString stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

        NSLog(@"encodedString2 %@",encodedString2);

     方法3:

        //这个方法能够解决既含有中文又含有特殊字符的解决办法 

        NSString *encodedString3 = CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)urlString, (CFStringRef)@"!$&'()*+,-./:;=?@_~%#[]", NULL, kCFStringEncodingUTF8));

        NSLog(@"encodedString3 %@",encodedString3);

    参考:    https://www.jianshu.com/p/09988b13e804

  • 相关阅读:
    数据结构:数组、链表、栈、队列的理解
    JVM学习记录-JVM的内存结构管理和运行时数据区理解
    线程池ThreadPoolExecutor的一种扩展办法
    四级地址插件升级改造(京东商城地址选择插件)city-picker
    java8在Collection中新增加的方法removeIf
    使用lambda编程之延迟执行
    JSP的内置对象以及作用域。
    Netty 异步的、事件驱动的网络应用程序框架和工具
    Zookeeper 服务注册和发现
    Jetty 发布web服务
  • 原文地址:https://www.cnblogs.com/huaida/p/11473851.html
Copyright © 2020-2023  润新知