在数据网路请求或其他情况下,需要将字符串转换成UTF-8编码  ios9后对其方法进行了修改

NSString *str = @"北京";

把这个转成UTF8以前我们使用的是

NSString *str3 = [str stringByAddingPercentEscapesUsingEncoding:

NSUTF8StringEncoding];

但是在ios9这个方法废弃了

用如下方法转

NSString *str1 = [str stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

那如果想转成“北京”这个字符串怎么办呢 ,不用担心有方法的

还是说以前我们用的方法是

NSString *str3 = [str1stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

ios9同样废弃了这个方法 现在使用

NSString *str2 = [str1 stringByRemovingPercentEncoding];

iOS9现在使用的转码方法:

NSString *str = @"http://www.test.com/你好.jpg";

NSString *result = [str stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]];

其中stringByAddingPercentEncodingWithAllowedCharacters方法默认采用的就是UTF8编码,不需要另外的参数,只需要在最后添加上相应的NSCharacterSet即可。

ios9 字符串与UTF-8 互相转换的更多相关文章

  1. 字符串与Objec之间互相转换

    字符串与Objec之间互相转换可通过json实现. JSON.parse(str);// 字符串转Json Object JSON.stringify(obj);// Obj转字符串

  2. Linux c字符串中不可打印字符转换成16进制

    本文由 www.169it.com 搜集整理 如果一个C字符串中同时包含可打印和不可打印的字符,如果想将这个字符串写入文件,同时方便打开文件查看或者在控制台中打印出来不会出现乱码,那么可以将字符串中的 ...

  3. 字符串json转换为xml xml转换json

    原文:字符串json转换为xml xml转换json // To convert an XML node contained in string xml into a JSON string XmlD ...

  4. Json对象与Json字符串的转化、JSON字符串与Java对象的转换

    一.Json对象与Json字符串的转化 1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符 ...

  5. Python中字符串/字典/json之间的转换

    import json #定义一个字典d1,字典是无序的 d1 = { "a": None, "b": False, "c": True, ...

  6. java字符串转义,把&lt;&gt;转换成<>等字符【原】

    java字符串转义,把<>转换成<>等字符 使用的是commons-lang3-3.4 中的StringEscapeUtils类 package test; import ja ...

  7. Json对象与Json字符串的转化、JSON字符串与Java对象的转换(转)

    一.Json对象与Json字符串的转化 1.jQuery插件支持的转换方式: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符 ...

  8. Python判断字符串编码以及编码的转换

    转自:http://www.cnblogs.com/zhanhg/p/4392089.html Python判断字符串编码以及编码的转换 判断字符串编码: 使用 chardet 可以很方便的实现字符串 ...

  9. C/C++中字符串与数字之间的转换

    主要有两种方式:C 中能够使用 sprintf 将数字转为字符数组,sscanf 将字符数组转为数字:而在 C++ 中不仅能够使用 C 中的方法,还能够使用 stringstream 实现字符串与数字 ...

  10. Json字符串与js数组互相转换

    1.Json数据格式的字符串转换成js数组: JSON.parse(str); // str 字符串格式   2.js数组转换成Json数据格式字符串: var myJSONText = JSON.s ...

随机推荐

  1. osg::Node clone

    深度拷贝 node.clone(osg::CopyOp::DEEP_COPY_ALL)  osg::ref_ptr<osg::Node> deepnode = (osg::Node *)( ...

  2. mobile crane 1

    void MobileCrane::rotateRope2() { //double r_angle1 = rotateRope + rorate3; //std::cout << &qu ...

  3. HTML布局排版4三部分测试图片页面

    布局样式有前面的三个相关博文介绍: 该页面因为方便以后自己用,所以JS并没有判断输入内容为空或不对的情况.页面本身特点:1.页头的透明图,方便不更换底层渐变的情况下,更换图片2.浏览器宽度改变,中间b ...

  4. AI - H2O - 第一个示例

    1 - Iris数据集 Iris数据集是常用的机器学习分类实验数据集,特点是数据量很小,可以快速学习. 数据集包含150个数据集,分为3类,每类50个数据,每个数据包含4个属性. Sepal.Leng ...

  5. Configuration system failed to initialize

    引用:https://cloud.tencent.com/developer/article/1336954 重装.net Framework

  6. 如何解决mac brew遇到无法下载的依赖?

    使用brew安装软件时,需要下载依赖包,但是如果依赖包特别大的时候,就很容易失败:brew本身不支持断点续传:但是可以使用wget -c的方式断点续传的下载依赖:下载完如何给brew安装使用呢?参考: ...

  7. [OpenCV开发]OpenCV图像编码和解码 imencode和imdecode使用,用于网络传输图片

    在很多应用中,经常会直接把图片的二进制数据进行交换,比如说利用 socket 通信传送图片二进制数据,或者直接用内存数据库(例如 Redis)来传递图片二进制数据. 这个时候,当你的应用程序读到内存里 ...

  8. 《ucore lab5》实验报告

    资源 ucore在线实验指导书 我的ucore实验代码 练习1: 加载应用程序并执行(需要编码) 题目 do_execv函数调用load_icode(位于kern/process/proc.c中) 来 ...

  9. PHP-FPM配置与调优

    PHP-FPM是啥? PHP-FPM是一个PHP FastCGI的管理器,它实际上就是PHP源代码的补丁,旨在将FastCGI进程管理引进到PHP软件包中. CGI是啥? CGI全称"公共网 ...

  10. todo---callback

    todo---callback https://blog.csdn.net/u010158267/article/details/51426963/