OC语言 URL 编码 Data 以及 String 之间转换
来源:互联网 发布:ui界面设计用什么软件 编辑:程序博客网 时间:2024/06/06 07:39
//有那么一个字符串
NSString *newStr = @"www.baidu你妹.com"; //普通字符串,(当然也可以看作是一个地址)
//转成data传输到另一地
NSData *dat = [newStrdataUsingEncoding:NSUTF8StringEncoding];
//还原
NSString *newStrLata = [[NSStringalloc]initWithData:datencoding:NSUTF8StringEncoding];
NSLog(@"newStrLata = %@",newStrLata);
newStrLata = www.baidu你妹.com //原来是什么就得回什么
//有那么一个地址字符串
NSString *newStr2 = @"http://www.baidu.com"; //现在想要传输这个地址上的内容到另一地
//编码(避免有特殊字符存在)(这个必有http://开头才为网络地址.)
newStr2 = [newStr2 stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSetURLFragmentAllowedCharacterSet]];
//转成url,一个地址,
NSURL *newStr2Url = [NSURLURLWithString:newStr2];
//转成data,让data读取这个地址上的内容并将其转成data数据
NSData *newStr2UrlData = [NSDatadataWithContentsOfURL:newStr2Url];
//将读取到的Data内容传输给另一方(还原成string(但是是内空还原,不是地址还原))
NSString *newStr2UrlDataLate = [[NSStringalloc]initWithData:newStr2UrlDataencoding:NSUTF8StringEncoding];
NSLog(@"newStr2UrlDataLate = %@",newStr2UrlDataLate);
//将读取到的Data内容写入到本地一个指定文件
BOOL newflag = [newStr2UrlData writeToFile:@"/Users/ibokan/Desktop/baidu.html"atomically:YES];
if (newflag) {
NSLog(@"success");
}
stringByAddingPercentEncodingWithAllowedCharacters
<span style="color:#ff0000;"> </span><span style="color:#006600;">(1) 网络访问请求:中文空格字符编码/解码 stringByAddingPercentEscapesUsingEncoding(只对 `#%^{}[]|\"<> 加空格共14个字符编码,不包括”&?”等符号), ios9将淘汰,建议用stringByAddingPercentEncodingWithAllowedCharacters方法URLFragmentAllowedCharacterSet "#%<>[\]^`{|} URLHostAllowedCharacterSet "#%/<>?@\^`{|} URLPasswordAllowedCharacterSet "#%/:<>?@[\]^`{|} URLPathAllowedCharacterSet "#%;<>?[\]^`{|} URLQueryAllowedCharacterSet "#%<>[\]^`{|} URLUserAllowedCharacterSet "#%/:<>?@[\]^`(2)网络访问请求:中文空格字符解码 stringByRemovingPercentEncoding ---- xcode7可能会提示要将stringByAddingPercentEscapesUsingEncoding替换成此方法,要根据是否是解码来区分 */ //代替stringByAddingPercentEscapesUsingEncoding let customAllowedSet = NSCharacterSet(charactersInString:"`#%^{}\"[]|\\<> ").invertedSet</span>
<span style="color:#006600;"></span>
- NSString * resourcePath = @"https://www.xiaocaobank.com";
-
- NSString *encodePath ;
-
- if (!IOS7_OR_LATER) {
- encodePath = [resourcePath stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
- }else{
- encodePath = [resourcePath stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet characterSetWithCharactersInString:@"`#%^{}\"[]|\\<> "].invertedSet];
-
- }
- OC语言 URL 编码 Data 以及 String 之间转换
- Data与String 类型之间的转换
- Image Data 和 String 之间转换
- String.getBytes() 以及 java编码转换
- iOS 编码 URL Data
- java中Data和String之间的相互转换
- python中文与url编码之间的相互转换
- String String数组以及list之间的转换
- String转StringBuffer以及String[ ]之间的相互转换
- Python3中byte和string之间各种编码转换
- Python3中byte和string之间各种编码转换
- string int Integer之间的转换以及日期问题[转]
- CString 与string 以及char之间的转换
- C# char和byte 以及string之间的转换问题
- string int Integer之间的转换以及日期问题
- JAVA中int、string、char[]以及char之间的转换
- JSON与String之间的转换以及公用类
- String与StringBuffer之间的关系,以及如何去转换
- 用Swift做个游戏Lecture06 —— 碰撞的检测
- 【经典代码】高精度加法
- Gradle DSL method not found :'useLibrary()'
- 机器学习中的数学(1)-回归(regression)、梯度下降(gradient descent)
- D3 js学习资料
- OC语言 URL 编码 Data 以及 String 之间转换
- 用Swift做个游戏Lecture07 —— 老板,来块记分牌!
- Android:嵌入式关系型SQLite数据库、SQLiteOpenHelper、SQLiteDatabase、事务
- Html5入门-hover选择器(一)
- 用Swift做个游戏Lecture08 —— Show Me 得分面板!
- Android 4.4 实现透明状态栏Translucent system bar(Status bar)
- Java并发和多线程2:3种方式实现数组求和
- 用Swift做个游戏Lecture09 —— 服务员,说好的菜单呢?
- CSS 引入的4种方式