作者:Love@YR
链接:http://blog.csdn.net/jingqiu880905/article/details/50525494
请尊重原创,谢谢!
- NSUeserDefaults(偏好设置),用来存储应用设置信息,文件放在perference目录下。
- 直接写文件的方式,可以存储的对象有NSString、NSArray、NSDictionary、NSData、 NSNumber,数据全部存放在一个属性列表文件(*.plist文件)中。
NSString *filePath = [cachePath stringByAppendingPathComponent:@”test.plist”];
//创建数据
NSDictionary *content = @{@”value1”:@”1”,@”value2”:@”2”,@”value3”:@”3”};
//将数据存到目标路径的文件中(这个时候如果该路径下文件不存在将会自动创建)
//用writeToFile方法写文件会覆盖掉原来的内容
[content writeToFile:filePath atomically:YES];
//读取数据(通过字典的方式读出文件中的内容)
NSDictionary *dic = [NSDictionary dictionaryWithContentsOfFile:filePath]; - 归档操作(NSkeyedArchiver),不同于前面两种,它可以把自定义对象存放在文件中。
通常,自定义的Model要想使用简单的方式写入到plist文件里,要遵循NSCoding协议。然后使用NSKeyedArchiver进行编码生成NSData,读取以后使用NSUnKeyedArchiver进行解码。
需要保存的对象类一定要引用NSCoding协议,并且实现
- (void)encodeWithCoder:(NSCoder *)aCoder
- (id)initWithCoder:(NSCoder *)aDecoder
NSData * data = [NSKeyedArchiver archivedDataWithRootObject:customObj];
CustomClass *customObj= [NSKeyedUnarchiver unarchiveObjectWithFile:targetPath];