ios关于临时数据缓存在本地/沙盒/归档/文件写入/缓存
作者:一颗顽石 | 来源:互联网 | 2023-08-27 16:08
IOS的应用在手机上至少存在两个路径,一个是程序根目录,另一个是称作沙盒的文件夹,我们要存储的数据一般放在沙盒目录中。这个目录可以通过全局方法:NSHomeDirectory()取得,各文件的
IOS的应用在手机上至少存在两个路径,一个是程序根目录,另一个是称作沙盒的文件夹,我们要存储的数据一般放在沙盒目录中。这个目录可以通过全局方法:
NSHomeDirectory()
取得,各文件的作用如下:
;
d1.detail = @"A wonderful game!";
// 创建或取得数据路径(后缀名随便)
NSString *dataPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/data.qx"];
// 归档
[NSKeyedArchiver archiveRootObject:d1 toFile:dataPath];
}
/**
* 反归档
*/
- (IBAction)unAchiver:(id)sender {
// 创建或取得数据路径(后缀名随便)
NSString *dataPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents/data.qx"];
// 反归档
QXData *d1 = (QXData *)[NSKeyedUnarchiver unarchiveObjectWithFile:dataPath];
NSLog(@"%@", d1);
}
注:文件路径取得的另一种方式:
// 搜索地址(搜索路径、根目录、是否展开)
NSArray *pathArr = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docPath = [pathArr lastObject];