IOS 本地储存(数据持久化)
来源:互联网 发布:python ggplot2 编辑:程序博客网 时间:2024/05/18 00:30
沙盒:其实对于每一个应用程序,都有唯一的一个本地文件与之对应,名字由系统随机生成.这个文件就是沙盒
沙盒机制:沙盒机制其实就是,对每一个应用程序的资源起到一个保护作用,当前程序不允许访问其他程序的资源,其他程序也不允许访问当前程序的资源. 对于每一个 应用程序的沙盒文件中都包含以下文件: 1.documents :用来存储持久化数据文件,如果我们想对一个文件进行长久存数,就该放在该文件夹下 2/Library: a)caches :缓存文件,存放已经下载完成的视频,音频,图片等等,一般我们会在该文件下创建Image,Audioes,Videos等文件存放图片,视频,音频等 b)prefrences:用于存储用户的偏好设置,比如用于判别程序是否是第一次启动的Plist文件就放在该目录下 3.tmp:存放未下载完成的视频,音频等.一般我们汇集哪个下载完成的视频,音频在手动移动到Caches XXXX.app:应用程序的包 ,应用程序的资源都来源于报,而包也是我们上传到appStore以及用户从appStore下载的文件 对于包内的资源我们不能进行修改,更不能删除 另外,对于以上文件都是由系统创建,不允许随意修改,删除 我们只能删除,修改自己创建的文件
//获取docments文件路径 NSString *docmentsPath=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject];//拼接文件路径 两种方法(这里的文件类型也可以.plist文件) //1. NSString *filePath=[docmentsPath stringByAppendingPathComponent:@"test.TxT"];//2.NSString *filepath=[docmentsPath stringByAppendingString:@"/test.TXT"]; // 写入 NSString *str=@"hello"; [str writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];
这样就可以将字符串类型的的数据存进test.TxT这个文件中了;
将字典存储成Plist文件 方法同上
//获取docments文件路径 NSString *docmentsPath=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject];//字典//先将要存入的字典 创建好并且赋值NSDictionary *dic=@{@"key1":value1 ,@"key2":value2 };// 文件拼接// NSString *filePath=[docmentsPath stringByAppendingPathComponent:@"dic.plist"];// //写入//[dic writeToFile:filePath atomically:YES];
data文件和 NSArray 类型的数据同字典一样
//data NSData*data=[str1 dataUsingEncoding:NSUTF8StringEncoding]; //文件拼接 NSString *filePath=[docmentsPath stringByAppendingPathComponent:@"data.TXT"]; //写入 [data writeToFile:filePath atomically:YES];
本地数据读取
1.获取文件路径
// 获取docment路径
NSString *docmentsPath=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject];// 拼接文件路径(找到dic.plist文件) NSString *filePath=[docmentsPath stringByAppendingPathComponent:@"dic.plist"];//读取(定义一个字典去接收它) NSDictionary *dic=[NSDictionary dictionaryWithContentsOfFile:filePath];
这样我们得到的字典dic就是之前存进去的字典了.
0 0
- IOS 本地储存(数据持久化)
- Unity本地持久化储存数据
- 理一下 iOS 本地持久化储存(侧重数据库SQLite
- iOS 本地数据持久化
- ios实现 本地存储 数据持久化
- iOS本地数据库(数据持久化)
- ios本地数据持久化方法
- ios数据本地持久化 之 使用文件持久化
- 数据持久化 (沙盒, 数据储存)
- iOS 使用levelDB储存本地数据
- iOS 本地数据持久化 中UserDefault的使用
- iOS开发中的本地数据存储(持久化)
- iOS项目拆分:数据本地持久化(1)
- iOS项目拆分:数据本地持久化(2)
- iOS项目拆分:数据本地持久化(3)
- iOS项目拆分:数据本地持久化(4)
- OC数据储存本地(一)-----iOS----数据持有华
- iOS 本地持久化 "归档"
- 四大适配器控制ListView显示
- 安卓自定义view之打造滚动的通知栏
- Java泛型Type体系
- Android仿QQ5.0侧滑菜单ResideMenu的使用和源码分析
- Mac上GitHub使用
- IOS 本地储存(数据持久化)
- Oracle触发器详解
- c语言Unicode值转换为字符不会是乱码,罗马数字显示
- 实现QQ、微信、新浪微博和百度第三方登录(Android Studio)
- 协议Protocol
- WebSocket即时通信、web消息推送
- 源码安装pysvn
- js正则表达式
- 设计模式23种通熟解释和简明教程