NSDictionary、NSArray调用writeToFile:atomically:失败
2015-07-20 17:12
218 查看
NSDictionary、NSArray调用writeToFile:atomically:失败
现象:从网络请求获取到数据,得到的是一个正常的字典数据,但是写入本地总是失败。
原因:
查了好长一会,发现是数据问题,网络数据中出现了null值。导致存不成功。
不禁要问自己一个问题,合法的字典和数组一定能写到本地吗?答案当然是否。因为plist只能存基础数据,boolean,data,date,number,string,以及包含基本数据类型的数据集NSDictionary、NSArray。
有人会说用NSUserDefaults存吧,抱歉,NSUserDefaults底层也是用的plist,还是想别的招吧。
所以希望服务端的开发人员,如果不是必须给null值,建议都传空字符串好么!!!好么-_-。
解决方案:
事情已经出了,怎么解决呢?
字典过滤掉null值,适用于不需要null值做判断的情况;
放弃plist,改用sqlite;
附去掉null值工具类:
https://git.oschina.net/yanglishuan/RemoveNULL.git
相关文章推荐
- 状态模式
- Android sqlite数据库操作卡顿解决办法
- <转>Openstack Ceilometer监控项扩展
- Magento Block的缓存机制
- J2SE核心开发实战(一)——认识J2SE
- MyEclipse使用总结——MyEclipse10安装SVN插件
- 【bzoj1082】 SCOI2005 栅栏 二分+搜索
- 冒泡排序
- android Scroller浅析
- yii 使用 mongodb 小工具 YiiMongoDbSuite
- TCP协议三次握手过程分析(转载)
- 通过jsoup对网页进行数据抓取。
- 关于Map的一个问题记录
- 【试水CAS-4.0.3】第05节_CAS服务端自定义返回的用户信息
- 机器学习(十四)Libsvm学习笔记
- ORACLE 归档日志打开关闭方法
- 什么是程序状态字,在微机中它一般由哪两部分组成?
- ubuntu root用户登录设置
- 删除android工程不再使用的资源文件
- Database之五 Mysql字符集