以实现搜索历史记录本地读写为例,总共两个方法即可实现,如下:
1、读取本地记录
///返回的数组就是我们取到的历史存储数据
- (NSMutableArray *)readSearchHistoryData{
NSMutableArray *arr = [NSMutableArray array];
NSString *path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *filePath = [path stringByAppendingPathComponent:@"searchHistory.data"];
arr = [NSKeyedUnarchiver unarchiveObjectWithFile:filePath];
return arr;
}
2、写入搜索记录
///本地写入搜索记录
/// @param num 本地需要存入的数量
/// @param dataArray 本地需要存入的数组
- (void)saveHistorySearch:(int)num dataArray:(NSArray *)dataArray{
NSString *Path = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSString *filePath = [Path stringByAppendingPathComponent:@"searchHistory.data"];
NSMutableArray * mutableArray = [NSMutableArray array];
if (dataArray.count > num) {
for (int i = 0; i<num; i++) {
[mutableArray addObject:dataArray[i]];
}
}else{
[mutableArray addObjectsFromArray:dataArray] ;
}
[NSKeyedArchiver archiveRootObject:mutableArray toFile:filePath];
}
干货就是这么简单,点个赞再走呀亲!!!