美文网首页iOS随笔小记
iOS随笔小记--归档存储数据

iOS随笔小记--归档存储数据

作者: 七一小月 | 来源:发表于2017-06-23 14:17 被阅读10次
利用归档存储数据
方法:缓存数据

/**
@param object 数据
@param key key值

+(void)cacheObject:(id)object forKey:(NSString *)key;
实现:
+(void)cacheObject:(id)object forKey:(NSString *)key {

[[NSUserDefaults standardUserDefaults] setObject:object forKey:key];
}
方法: 获取缓存数据

/**
@param key key值
@return 缓存的数据

+(id)objectInCacheForKey:(NSString *)key;
实现:
+(id)objectInCacheForKey:(NSString *)key {

return [[NSUserDefaults standardUserDefaults] objectForKey:key];
}
方法: 缓存BOOL

/**
@param bol YES/NO
@param key key值

+(void)cacheBool:(BOOL)bol forKey:(NSString *)key;
实现:
+(void)cacheBool:(BOOL)bol forKey:(NSString *)key {

[[NSUserDefaults standardUserDefaults] setBool:bol forKey:key];
}
方法: 获取缓存的BOOL值

/**

@param key key值
@return YES/NO

+(BOOL)boolInCacheForKey:(NSString *)key;
实现:
+(BOOL)boolInCacheForKey:(NSString *)key {

return [[NSUserDefaults standardUserDefaults] boolForKey:key];
}
方法名: 归档,以文件形式存储数据

/**
@param object 数据
@param fileName 文件名

+(void)archiveRootObject:(id)object toFile:(NSString *)fileName;
实现:
//存档
+(void)archiveRootObject:(id)object toFile:(NSString *)fileName {

NSString *filePath = [self filePath:fileName];

[NSKeyedArchiver archiveRootObject:object toFile:filePath];

}
方法: 解档,获取文件内容

/**
@param fileName 文件名
@return 存储在文件中的内容

+(id)unarchiveObjectWithFile:(NSString *)fileName;
实现:
//解档
+(id)unarchiveObjectWithFile:(NSString *)fileName {
    
NSString *filePath = [self filePath:fileName];

return [NSKeyedUnarchiver unarchiveObjectWithFile:filePath];
}
方法: 获取文件路径

/**
@param fileName 文件名
@return 文件路径

+(NSString *)filePath:(NSString *)fileName;
实现:
+(NSString *)filePath:(NSString *)fileName{

return [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:fileName];
}
方法: 判断文件是否存在

/**
@param fileName 文件名
@return YES/NO

+(BOOL)cacheFileExistsAtPath:(NSString *)fileName;
实现:
+(BOOL)cacheFileExistsAtPath:(NSString *)fileName {

BOOL isExist = NO;

NSFileManager *fileManager = [NSFileManager defaultManager];

if ([fileManager fileExistsAtPath:[self filePath:fileName]]) {
    
    isExist = YES;
    
}else {
    
    isExist = NO;
}

return isExist;
}
方法: 删除路径下指定文件名的文件

/**
@param fileName 文件名

+(void)removeCacheFileAtPath:(NSString *)fileName;
实现:
+(void)removeCacheFileAtPath:(NSString *)fileName {

if ([YDArchiveCacheManager cacheFileExistsAtPath:fileName]) {
    
    NSFileManager *fileManager = [NSFileManager defaultManager];
    
    NSError *err;
    
    [fileManager removeItemAtPath:[self filePath:fileName] error:&err];
    
}
}

相关文章

  • iOS随笔小记--归档存储数据

    利用归档存储数据 方法:缓存数据 /**@param object 数据@param key key值 实现...

  • iOS-12 数据存储

    1iOS数据存储之Core Data(一) - 简书 2iOS数据存储之归档 - 简书 3iOS数据存储之偏好设置...

  • ios 归档和解归档(利用runtime)

    前言 iOS存取数据的方式有几种,这次项目中存储一些小数据所以用的归档,希望对用归档存储数据的同学有帮助。 iOS...

  • ios数据存储

    数据存储 iOS应用数据存储的常用方式 - XML属性列表(plist)归档 - Preference(偏好设置)...

  • UI控件进阶3——数据存储

    数据存储 iOS应用数据存储的常用方式?XML属性列表(plist)归档(归档:用某种格式来保存一个或者多个对象,...

  • iOS数据存储

    iOS开发中数据存储有两类:一、存储为文件 如归档、解归档、plist文件存储及偏好设置都是存储为文件二、存储到...

  • 数据存储(归档解档,沙河存储)

    数据存储 iOS应用数据存储的常用方式 XML属性列表(plist)归档 存Documents中 Prefere...

  • iOS数据持久化

    iOS本地数据存储总共就集中方案: 属性列表(plist存储) 系统存储(NSUserDefaults) 归档序列...

  • iOS数据持久化

    iOS数据持久化 iOS应用数据存储的常用方式 XML属性列表(plist)归档 Preference(偏好设置)...

  • IOS数据存储常用方式(一)plist

    IOS数据存储有很多方式 今天主要讲的是plist存储 一.数据存储主要方式 XML属性列表(plist)归档 /...

网友评论

    本文标题:iOS随笔小记--归档存储数据

    本文链接:https://www.haomeiwen.com/subject/mucccxtx.html