将Array、Dictionary等集合类的序列化和反序列化

Objective-C的集合类序列化到文件中或者从文件中反序列化其实很简单,请看下面的示例代码:

  1. NSArray *array = [NSArray arrayWithObjects:
  2. @"Hefeweizen", @"IPA", @"Pilsner", @"Stout"nil];
  3. NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:
  4. array, @"array", @"Stout", @"dark", @"Hefeweizen", @"wheat", @"IPA",
  5. @"hoppy"nil];
  6. // 得到documents directory的路径
  7. NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
  8. NSUserDomainMask, YES);
  9. if ([paths count] > 0)
  10. {
  11. // Array的保存路径
  12. NSString  *arrayPath = [[paths objectAtIndex:0]
  13. stringByAppendingPathComponent:@"array.out"];
  14. // dictionary的保存路径
  15. NSString  *dictPath = [[paths objectAtIndex:0]
  16. stringByAppendingPathComponent:@"dict.out"];
  17. // 保存array
  18. [array writeToFile:arrayPath atomically:YES];
  19. // 保存dictionary
  20. [dictionary writeToFile:dictPath atomically:YES];
  21. // 从文件中读取回来
  22. NSArray *arrayFromFile = [NSArray arrayWithContentsOfFile:arrayPath];
  23. NSDictionary *dictFromFile = [NSDictionary dictionaryWithContentsOfFile:dictPath];
  24. for (NSString *element in arrayFromFile)
  25. NSLog(@"Beer: %@", element);
  26. for (NSString *key in dictFromFile)
  27. NSLog(@"%@ Style: %@", key, [dictionary valueForKey:key]);
  28. }

输出如下:

http://blog.prosight.me/index.php/2010/02/582

转载于:https://www.cnblogs.com/1208/archive/2012/07/05/2578210.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/363243.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

职场交流:一位软件工程师的7年总结

2009年05月13日15:06  来源:1、分享第一条经验:“学历代表过去、能力代表现在、学习力代表未来。”其实这是一个来自国外教育领域的一个研究结果。相信工作过几年、十几年的朋友 对这个道理有些体会吧。但我相信这一点也很重要:“重要的道理…

使用自定义断言丰富测试代码

受GeeCON会议期间tkaczanowski演讲的启发,我决定仔细研究AssertJ库的自定义断言。 在我的“骰子”游戏中,我创建了一个“机会”,它是骰子的任意组合,其分数是所有骰子的总和。 这是相对简单的对象: class Chance imp…

js判断数据类型

在js中如果想判断某种数据的数据类型,一般使用typeof方法 var str "string";var num 1;var bool true;var u;var n null;var nan NaN;var obj new Object();var fn function () {};console.log(typeof str); //stringconsole.log(typeof num); //n…

Elasticsearch 索引别名的使用

几种常用方式: 1.定时更新别名指向,更新后原索引可删除或保留 POST /_aliases {"actions": [{"add": {"alias": "logs_current","index": "logs_2018-10"}},{"remove": {"a…

Python的win32serviceutil之疑似BUG

郑昀玩聚SR 20090515 1、现象: 用Python的win32serviceutil控制Windows Service启动、停止、重启时,如下代码一般是没问题的。 import win32serviceutil def service_manager(action, machine, service): if action stop: win32serviceutil…

JavaFX 8u20天的未来过去(始终在最前面)

自从我发布有关JavaFX的主题以来已经有很长时间了。 因此,如果您仍在追随,那就太棒了! 介绍 在这篇博客文章中,我想写一篇关于从JavaFX 8 update 20开始的非常酷的功能的博客,该功能使您的应用程序始终位于其他应用程…

cocos creator实战-(三)简单例子摇杆控制角色移动

(待完善,给玩家加上摄像机跟随效果) 1、stick监听cc.Node.EventType.TOUCH_MOVE事件,获取tick移动的坐标和朝向,限制移动的范围 2、根据stick的朝向,每帧更新player的位置和方向 // 摇杆代码 joy_stick.jsc…

统计数组中重复元素个数

/*** 循环统计数组或集合中的重复元素个数* param args*/public static void main(String[] args) {Map<String, Integer> map new HashMap<String, Integer>();String[] ss {"白","黑","绿","白"};for (int i 0; i &l…

火狐 和 IE 透明度的设置。

javascript 中设置如下。 Current 是一个div层。 if(Current.filters undefined) // fire fox { Current.style.MozOpacity 0.75; } else { // ie Current.filters.alpha.opacity…

使用Java 8.0进行类型安全的依赖项注入

所以我有时真的很想念旧学校的依赖注入。 当Spring仍然“轻量级”时&#xff0c;我们很高兴地使用“ 一天学习 ” Spring bean xml配置在application.xml文件中配置了所有bean。 缺点当然是类型安全性的损失。 我可以想到很多测试用例&#xff0c;这些用例的唯一目的是引导Spri…

a标签点击跳转失效--IE6、7的奇葩bug

一般运用a标签包含img去实现点击图片跳转的功能&#xff0c;这是前端经常要用到的东西。 今天遇到个神奇的bug&#xff1a;如果在img上再包裹一层div&#xff0c;而且div设置了width和height&#xff0c;则图片区域点击时&#xff0c;无任何响应。 出现这个bug的条件是&#…

python 数据类型之间的转换

Number数据类型转换 # ###强制类型换 Number (int float bool complex) var1 68 var2 6.89 var3 False var4 3-4j var5 "12345678" var6 "qwe123"#(1) int 强制转换成整型 res int(var2) res int(var3) #res int(var4) #TypeError: cant convert …

php构造数组,并把多数组插入php文件

晚上做的一点东西&#xff0c;发出来大家共享下&#xff01; Code<?php //php 链接数据库mysql_connect("localhost", "root", "hicc") or die("Could not connect: " . mysql_error());mysql_select_db("babyker");$re…

针对新手的Java EE7和Maven项目–第6部分

从前面的部分恢复 第1 部分 &#xff0c; 第2 部分 &#xff0c; 第3 部分 &#xff0c; 第4 部分 &#xff0c; 第5部分 在上一篇文章&#xff08;第5部分&#xff09;中&#xff0c;我们发现了如何使用Arquillian&#xff08;我们的EJB服务&#xff09;进行单元测试&#xf…

1. 整除及其性质

整除的定义&#xff1a; 若整数 a 除以非零整数 b &#xff0c;商为整数且余数为零&#xff0c;即 a 能被 b 整除&#xff0c;记做 b | a&#xff0c;读作&#xff1a;b 整除 a 或 a 能被 b 整除。a 叫做 b 的倍数&#xff0c; b 叫做 a 的因数。 整除基本性质&#xff1a; 1. …

echarts 地图 免费离线js,json包分享

最近&#xff0c;项目中需要用到地图&#xff0c;由于项目的特殊性&#xff0c;只能使用内网获取数据。 然而&#xff0c;echarts官网上的离线地图包&#xff08;http://echarts.baidu.com/download-map.html&#xff09;早在一年前就不支持下载了&#xff0c;推荐使用地图API…

WPF 中的设备无关单位

WPF窗体以及内部的所有元素都是采用设备无关的单位来衡量的。一个设备无关单位定义为1英寸的96分之一&#xff0c;即1/96 inch。 假定我们创建了一个WPF按钮&#xff0c;其大小为96x96个单位&#xff0c;如果使用标准Windows的DPI设置&#xff08;96dpi&#xff09;&#xff0…

收藏网站制作常用经典css.div.布局.设计实例打包下载(下方有其他链接)

http://www.aa25.cn/234.shtml 转载于:https://www.cnblogs.com/asia/archive/2009/05/20/1467772.html

Java 8 Friday:大多数内部DSL已过时

在Data Geekery &#xff0c;我们喜欢Java。 而且&#xff0c;由于我们真的很喜欢jOOQ的流畅的API和查询DSL &#xff0c;我们对Java 8将为我们的生态系统带来什么感到非常兴奋。 Java 8星期五 每个星期五&#xff0c;我们都会向您展示一些不错的教程风格的Java 8新功能&#…

Starter pom

以下图片是引用书籍内容&#xff1a; 比如你在用boot写一个web项目&#xff0c;在maven中你会导入&#xff1a; <!-- 导入spring boot的web支持 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-we…