以plist文件做本地存储
2016-02-29 09:39
295 查看
1、把需要保存的信息已plist文件形式保存在本地,即写入沙盒:
其中Decuments是沙盒固定路径,data.plist是自己取的要保存的文件的名字;
2、当需要拿出保存的信息的时候,读取保存在本地的plist文件:
3、有时保存在本地的文件信息不是最新时,需要删除上次保存在本地的文件,然后重新保存的最新的信息在本地:
这样就完成了文件的本地存储。
对于小文件的存储,减少了用数据库存储的麻烦,以plist文件存储,轻便、快捷,操作简单。
有时候对于网络数据的缓存,如果数据不是很打的话,也是可以用plist文件存储的。
/** * 写入本地(plist文件) */ - (void)saveArray { // 1.获得沙盒根路径 NSString *home = NSHomeDirectory(); // 2.document路径 NSString *docPath = [home stringByAppendingPathComponent:@"Documents"]; // 3.新建数据 NSDictionary *dict = @{@"haha":@"11", @"hehe":@"12", @"huhu":@"13", @"gogo":@"14" }; NSString *filepath = [docPath stringByAppendingPathComponent:@"data.plist"]; [dict writeToFile:filepath atomically:YES]; }
其中Decuments是沙盒固定路径,data.plist是自己取的要保存的文件的名字;
2、当需要拿出保存的信息的时候,读取保存在本地的plist文件:
/** * 读取写入本地的plist文件 */ - (IBAction)read { // 1.获得沙盒根路径 NSString *home = NSHomeDirectory(); // 2.document路径 NSString *docPath = [home stringByAppendingPathComponent:@"Documents"]; // 3.文件路径 NSString *filepath = [docPath stringByAppendingPathComponent:@"data.plist"]; // 4.读取数据 NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:filepath]; NSLog(@"%@", dic); }
3、有时保存在本地的文件信息不是最新时,需要删除上次保存在本地的文件,然后重新保存的最新的信息在本地:
/** * 删除保存在本地的plist文件的数据 */ - (void)remove{ // 1.获得沙盒根路径 NSString *home = NSHomeDirectory(); // 2.document路径 NSString *docPath = [home stringByAppendingPathComponent:@"Documents"]; // 3.文件路径 NSString *filepath = [docPath stringByAppendingPathComponent:@"data.plist"]; NSFileManager *fileManager = [NSFileManager defaultManager]; [fileManager removeItemAtPath:filepath error:nil]; }
这样就完成了文件的本地存储。
对于小文件的存储,减少了用数据库存储的麻烦,以plist文件存储,轻便、快捷,操作简单。
有时候对于网络数据的缓存,如果数据不是很打的话,也是可以用plist文件存储的。
相关文章推荐
- android事件分发机制
- js的隐含参数(arguments,callee,caller)使用方法
- Chrome for Android在Chromium代码库中的提交patch
- Chrome for Android在Chromium代码库中的提交patch
- android The method execute(Void[]) is ambiguous for the type new AsyncTask<Void,Void,Void>(){} (转)
- linux下mysql出现中文乱码(中文问号)
- App 开发:Hybrid 架构下的 HTML5 应用加速方案
- iOS-私有API与runtime
- Java Nio 八、Java NIO FileChannel
- Animation动画详解(十)——联合动画的XML实现与使用示例
- 侧滑简单自定义框架/LXViewController
- 学习Java web里面的web.xml文件
- ubuntu14.04 ibus pinyin wrong (ibus拼音乱拼问题)
- iOS开发——iOS状态栏和导航栏的控制问题
- Android Studio 常见问题集锦
- 基于OSSIM平台下H3C华三交换机日志收集插件编写
- nodejs通过session实现身份验证
- OpenCV对鼠标事件的处理
- 11款CSS3动画工具的开发
- IOS设计模式之组合设计模式