IOS数据存储
2016-01-08 23:15
295 查看
"IOS数据存储的方式有哪些"
1.plist
2.preference用户偏好设置
3.NSKeyedArchiver(归档)
4.sqlite
5.coredata
"plist文件存储"
1.字符串 数组 字典 可以直接存储数据在一个文件
将一个NSDictionary对象归档到一个plist属性列表中
// 将数据封装成字典
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
[dict setObject:@"母鸡" forKey:@"name"];
[dict setObject:@"15013141314" forKey:@"phone"];
[dict setObject:@"27" forKey:@"age"];
// 将字典持久化到Documents/stu.plist文件中
[dict writeToFile:path atomically:YES];
2.掌握沙盒备目录的作用以及目录路径获取方式
// Document [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]
// 缓存 [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
// 临时 NSTemporaryDirectory();
// 主目录 NSHomeDirectory();
3.不是所有对象都可以保存到plist文件中,要有实现writeFile方法才可以
4.学会使用SimPholders2打开沙盒目录
"用户偏好设置"
1.ios中有个NSUserDefaults对象有可保存数据,我们称为用户偏好设置
2.通过[NSUserDefaults standardUserDefaults]可以获取用户偏好设置对象,保存字符串 布尔值 int等数据
3.保存数据时,一定要调用synchronize,因为数据要及时保存到沙盒的文件中
/* NSUserDefaults *defualts = [NSUserDefaults standardUserDefaults];
[defualts setObject:@"zhangsan" forKey:@"username"];
[defualts setObject:@"123" forKey:@"password"];
[defualts setBool:YES forKey:@"autoLogin"];
[defualts setBool:YES forKey:@"rememberPwd"];
//同步
[defualts synchronize];
*/
"NSKeyedArchiver归档"
/*什么叫归档 归档就是把数据保存到一个文件中*/
1.使用NSKeyedArchiver可以将NSArray NSDictiony NSString等对象归档到一个文件
2.只有实现了NSCoding协议的对象才可使用NSKeyedArchiver进行归档
3.将模型对象保存到一个文件时,对象要遵守NSCoding协议,并实现NSKeyedArchiver的encodeWithCoder方法,
4.从归档文件里读取对象时要实现NSCoding的initWithCoder方法
5.ios中,控制器,控件都继承NSCoding,storyboard/xib都是使用NSKeyedArchiver进行归档的
1.plist
2.preference用户偏好设置
3.NSKeyedArchiver(归档)
4.sqlite
5.coredata
"plist文件存储"
1.字符串 数组 字典 可以直接存储数据在一个文件
将一个NSDictionary对象归档到一个plist属性列表中
// 将数据封装成字典
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
[dict setObject:@"母鸡" forKey:@"name"];
[dict setObject:@"15013141314" forKey:@"phone"];
[dict setObject:@"27" forKey:@"age"];
// 将字典持久化到Documents/stu.plist文件中
[dict writeToFile:path atomically:YES];
2.掌握沙盒备目录的作用以及目录路径获取方式
// Document [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]
// 缓存 [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];
// 临时 NSTemporaryDirectory();
// 主目录 NSHomeDirectory();
3.不是所有对象都可以保存到plist文件中,要有实现writeFile方法才可以
4.学会使用SimPholders2打开沙盒目录
"用户偏好设置"
1.ios中有个NSUserDefaults对象有可保存数据,我们称为用户偏好设置
2.通过[NSUserDefaults standardUserDefaults]可以获取用户偏好设置对象,保存字符串 布尔值 int等数据
3.保存数据时,一定要调用synchronize,因为数据要及时保存到沙盒的文件中
/* NSUserDefaults *defualts = [NSUserDefaults standardUserDefaults];
[defualts setObject:@"zhangsan" forKey:@"username"];
[defualts setObject:@"123" forKey:@"password"];
[defualts setBool:YES forKey:@"autoLogin"];
[defualts setBool:YES forKey:@"rememberPwd"];
//同步
[defualts synchronize];
*/
"NSKeyedArchiver归档"
/*什么叫归档 归档就是把数据保存到一个文件中*/
1.使用NSKeyedArchiver可以将NSArray NSDictiony NSString等对象归档到一个文件
2.只有实现了NSCoding协议的对象才可使用NSKeyedArchiver进行归档
3.将模型对象保存到一个文件时,对象要遵守NSCoding协议,并实现NSKeyedArchiver的encodeWithCoder方法,
4.从归档文件里读取对象时要实现NSCoding的initWithCoder方法
5.ios中,控制器,控件都继承NSCoding,storyboard/xib都是使用NSKeyedArchiver进行归档的
相关文章推荐
- iOS数据存储的三种方式
- iOS socket编程
- iOS开发 学习计划图
- iOS:使用block进行传值
- iOS学习中cocoapods的简单运用总结
- iOS常用手势
- iOS容易造成循环引用的三种场景,就在你我身边!
- MAC键盘快捷键
- iOS 学习--网页视图知识点
- 给你的iOS应用更换主题
- ios中协议与委托形象解释
- iOS中时间日期的基本应用
- iOS 史上最全的图片压缩方法集合
- iOS:点击button卡死
- iOS 如何做扫码安装
- IOS中的block和retain cycle (经典)
- 【iOS】Quartz 2D绘制直线/长方形/椭圆/圆形
- 在IOS 模拟器中 输入中文
- iOS后台运行程序(一)——location
- iOS开发 获取当前正在显示的ViewController(包含Push的和presented的)