zoukankan      html  css  js  c++  java
  • iOS URL中汉字的编码和解码

    发现NSString类中有内置的方法可以实现。他们分别是:

    - (NSString *)stringByAddingPercentEscapesUsingEncoding:(NSStringEncoding)encoding
    - (NSString *)stringByReplacingPercentEscapesUsingEncoding:(NSStringEncoding)encoding

           只要传入相应的编码即可以进行编码和解码了,不过此方法是对整个Url进行编码的所以如果有Query String中带有&?/等是不会进行编码转换的,如果有这方面的需要的朋友可以参照下面提供的网址,找到解决方法:http://www.cocoachina.com/bbs/read.php?tid-2469.html

    示例:

    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/文件夹  

  • 相关阅读:
    机器学习实战
    python中的上下文管理器
    python中的参数传递
    SecureCRT在mac下无法输入中断命令
    Vim练级攻略(转)
    09_MySQL DQL_SQL99标准中的多表查询(外连接)
    08_MySQL DQL_SQL99标准中的多表查询(内连接)
    07_MySQL DQL_多表查询_等值内连接
    06_MySQL DQL_分组查询
    05_MySQL常见函数_分组函数
  • 原文地址:https://www.cnblogs.com/wfwenchao/p/3876652.html
Copyright © 2011-2022 走看看