NSArray与NSString、NSData,NSDictionary与NSString、NSData 相互转化
NSArray *array = @[ @1, @2, @3, @4, @5, @3 ];
// 1. NSArray与NSData相互转化
// NSArray to NSData
NSError *error;
NSData *arrayData = [NSJSONSerialization dataWithJSONObject:array options:NSJSONWritingPrettyPrinted error:&error];
if (!error) {
NSLog(@"arrayData = %@", arrayData);
} else {
NSLog(@"%@", error);
}
// NSData to NSArray
NSArray *data2Array = [NSJSONSerialization JSONObjectWithData:arrayData options:NSJSONReadingMutableLeaves error:&error];
if (!error) {
NSLog(@"data2Array = %@", data2Array);
} else {
NSLog(@"%@", error);
} // 2. NSArray与NSString相互转化
// NSArray to NSString
NSString *arrayStr = [array componentsJoinedByString:@","];
NSLog(@"arrayStr = %@", arrayStr);
// NSString to NSArray
NSArray *string2Array = [arrayStr componentsSeparatedByString:@","];
NSLog(@"string2Array = %@", string2Array); NSDictionary *dictionary = @{ @"name": @"xue zhang", @"sex": @1, @"age": @25 };
// 3. dictionary与NSData相互转化
// NSArray to NSData
NSData *dictionaryData = [NSJSONSerialization dataWithJSONObject:dictionary options:NSJSONWritingPrettyPrinted error:&error];
if (!error) {
NSLog(@"dictionaryData = %@", dictionaryData);
} else {
NSLog(@"%@", error);
}
// NSData to NSDictionary
NSDictionary *data2Dictionary = [NSJSONSerialization JSONObjectWithData:dictionaryData options:NSJSONReadingMutableLeaves error:&error];
if (!error) {
NSLog(@"data2Dictionary = %@", data2Dictionary);
} else {
NSLog(@"%@", error);
} // 4. NSDictionary与NSString相互转化
// NSDictionary to NSString
NSString *dictionaryStr = [[NSString alloc] initWithData:dictionaryData encoding:NSUTF8StringEncoding];
NSLog(@"dictionaryStr = %@", dictionaryStr);
// NSString to NSArray
NSDictionary *string2Dictionary = [NSJSONSerialization JSONObjectWithData:[dictionaryStr dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableLeaves error:&error];
NSLog(@"string2Dictionary = %@", string2Dictionary);
NSArray与NSString、NSData,NSDictionary与NSString、NSData 相互转化的更多相关文章
- 为什么有时候NSData转换成NSString的时候返回nil
为什么有时候NSData转换成NSString的时候返回nil 有时候,NSData明明有值,可是,当转换成NSString的时候,却没有值,现在来进行测试:) -现在提供测试用素材- 源码如下: / ...
- JSON Object(如NSDictionary,NSArray)转化为JSON格式的NSString #iOS开发
NSString *string = [self jsonObjectToJSONString:inputDataDic]; -(NSString*)jsonObjectToJSONString:(i ...
- HTTP请求返回的NSData无法转换为NSString
最近在做的一个项目中有一个功能是有一个网页,模拟http请求获取到这个网页返回的相应的数据. 在请求完成后获取到的数据为NSData类型,按照我们通常的转换为NSString的方法: NSString ...
- NSDate与 NSString 、long long类型的相互转化
我的技术博客经常被流氓网站恶意爬取转载.请移步原文:http://www.cnblogs.com/hamhog/p/3560280.html,享受整齐的排版.有效的链接.正确的代码缩进.更好的阅读体验 ...
- NSString *const 和 const NSString * 的区别
1.变量存储的指针可变,变量存储的值不可变 //A modifiable pointer to a constant NSString (its value can't be modified) &q ...
- NSData NSDate NSString NSArray NSDictionary 相互转换
// NSData NSDate NSString NSArray NSDictionary json NSString *string = @"hello word"; NSDa ...
- NSData NSDate NSString NSArray NSDictionary 相互转化
// NSData NSDate NSString NSArray NSDictionary json NSString *string = @"hello word"; ...
- XML 格式转JSON 格式
#import <Foundation/Foundation.h> #pragma GCC diagnostic push #pragma GCC diagnostic ignored & ...
- runtime实现对象存储型数据库——LHDB
前言 最近在GitHub上看了一份关于基于runtime封装的对象存储型数据库的开源代码,觉得非常值得分享记录一下,在IOS中对数据库的操作一般通过CoreData和SQLite,CoreData 虽 ...
随机推荐
- citySelect省市区jQuery联动插件
参考地址:http://blog.csdn.net/qq_33556185/article/details/50704446 参考地址:http://www.lanrenzhijia.com/jque ...
- Jmeter录制浏览器并回放
确认证书 1.查看证书 进入Jmeter安装目录下的bin,找到ApacheJMeterTemporaryRootCA.crt 证书文件(如jmeter在安装目录中未找到,可尝试先执行下面的开始录制步 ...
- form总结
在Javascript 中,页面上的每一对<form> 标记都解析为一个对象,即form 对象. 可以通过document.forms 获取以源顺序排列的文档中所有form 对象的集合. ...
- python 全栈开发,Day49(超链接导航栏案例,background,定位,z-index,iconfont使用)
昨日内容回顾 浮动:是css中布局最多的一个属性 有浮动,一定要清除浮动 浮动不是一个元素单独浮动,要浮动一起浮动 清除浮动四种方式: 1.给父盒子添加高度,一般导航栏 2.给浮动元素后面加一个空的块 ...
- 转发(Forward)和重定向(Redirect)的区别
转发是服务器行为,重定向是客户端行为. 转发(Forword) :通过RequestDispatcher对象的forward(HttpServletRequest request,HttpServle ...
- python 线程间通信之Condition, Queue
Event 和 Condition 是threading模块原生提供的模块,原理简单,功能单一,它能发送 True 和 False 的指令,所以只能适用于某些简单的场景中. 而Queue则是比较高级的 ...
- mysql undo 和redo 被误删除的恢复操作(一致性)
今天在群里看到有人说不熟悉innodb把ibdata(数据文件)和ib_logfile(事务日志)文件误删除了.不知道怎么解决.当时我也不知道怎么办.后来查阅相关资料.终找到解决方法.其实恢复也挺简单 ...
- canvas画多边形
<canvas id = "myCanvas" width = '500' height = '500'> Canvas画正多边形 </canvas>< ...
- mybatis的sqlSessionFactory的加载过程
使用过SSM的框架的都知道mybatis这个持久层框架,今天小编就来简单说说这个框架的核心工厂类sqlSessionFactory的加载过程,一般的SSM框架我们都会在spring的applicati ...
- Educational Codeforces Round 26-D. Round Subset
题目大意:给你n个数字(小于1e18),从n个数中取k个数字相乘,使其后缀0最多,问你后缀0最多是多少. 知道得用三维的dp[ i ] [ j ] [ k ] 第一维表示用到第 i 个数为止,j 表 ...