iOS的几种本地存储
1.plist文件
2.Preference(系统设置)
3.NSKeyedArchiver(归档)
plist文件
Preference(系统设置)
一般用NSUserDefaults做偏好设置,用户信息,是否推送,是否支持3G,登录时用户的信息等的本地存储
//偏好设置,用户信息,.
NSUserDefaults * ud = [NSUserDefaults standardUserDefaults];
NSUserDefaults * ud1 = [NSUserDefaults standardUserDefaults];
//存储偏好数据
[ud setObject:@"11" forKey:@"age"];
[ud setInteger:20 forKey:@"weight"];
setObject + synchronize
//马上存入本地
[ud synchronize];
//从本地获取
NSLog(@"%@", [ud objectForKey:@"username"]);
[ud removeObjectForKey:@"age"];
NSKeyedArchiver(归档)
1> 概念:对象归档是一个过程,即某种格式来保存一个或多个对象,以便以后还原这些对象
在其它语言中,对象归档也叫对象序列化
2> 要对自定义的对象(而不是Foundation里默认的对象)进行归档的话就需要引入归档协议<NSCoding>
实现两个方法
-(void) encodeWithCoder: (NSCoder *) aCoder
-(id) initWithCoder: (NSCoder *) aDecoder
3> 对象归档方法
[NSKeyedArchiver archiveRootObject: user1 toFile: filePath];
对象解归档方法
[NSKeyedUnarchiver unarchiveObjectWithFile: filePath];
Person的.h文件
实现<NSCoding>
归档写入本地
解档 从本地读取数据