iOS文件存储

在h文件中:

//将json数据暂存在沙盒

+(void)writeToFile:(NSDictionary*)dic WithName:(NSString*)fileName;

//读取预存的json数据

+(NSDictionary*)getDataWithFileName:(NSString*)fileName;

//将字符串转为json格式

+ (NSDictionary*)dictionaryWithJsonString:(NSString*)jsonString;

//删除json文件

+(void)removeJsonFile:(NSString*)fileName;

//遍历沙盒下所有文件

+(void)seekAllFile;


在m文件中:

//将json数据暂存在文件里

+(void)writeToFile:(NSDictionary*)dic WithName:(NSString*)fileName{

NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);

NSString*path=[pathsobjectAtIndex:0];

NSString*Json_path=[pathstringByAppendingPathComponent:[NSStringstringWithFormat:@"%@.json",fileName]];

NSError*err;

NSData* data=[NSJSONSerializationdataWithJSONObject:dicoptions:NSJSONWritingPrettyPrintederror:&err];

if(err) {

NSLog(@"%@",err);

}

else{

//==写入文件

NSLog(@"%@",[datawriteToFile:Json_pathatomically:YES] ?@"Succeed":@"Failed");

}

}

//读取预存的json数据

+(NSDictionary*)getDataWithFileName:(NSString*)fileName

{

//读取Json

//==Json文件路径

NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);

NSString*path=[pathsobjectAtIndex:0];

NSString*Json_path=[pathstringByAppendingPathComponent:[NSStringstringWithFormat:@"%@.json",fileName]];

NSData* data=[[NSDataalloc]initWithContentsOfFile:Json_path];

if(data) {

NSError*err;

NSDictionary* dic=[NSJSONSerializationJSONObjectWithData:dataoptions:NSJSONReadingAllowFragmentserror:&err];

if(err) {

NSLog(@"json解析失败:%@",err.userInfo);

}

else{

NSLog(@"解析成功:%@",dic);

returndic;

}

}

else{

NSLog(@"该文件无数据或不存在:%@",Json_path);

}

returnnil;

}

//将字符串转为json格式

+ (NSDictionary*)dictionaryWithJsonString:(NSString*)jsonString {

if(jsonString ==nil) {

returnnil;

}

NSData*jsonData = [jsonStringdataUsingEncoding:NSUTF8StringEncoding];

NSError*err;

NSDictionary*dic = [NSJSONSerializationJSONObjectWithData:jsonData

options:NSJSONReadingMutableContainers

error:&err];

if(err) {

NSLog(@"json解析失败:%@",err);

returnnil;

}

returndic;

}

//删除json文件

+(void)removeJsonFile:(NSString*)fileName

{

NSFileManager* fileM=[NSFileManagerdefaultManager];

NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);

NSString*path=[pathsobjectAtIndex:0];

NSString*Json_path=[pathstringByAppendingPathComponent:[NSStringstringWithFormat:@"%@.json",fileName]];

BOOLblHave=[[NSFileManagerdefaultManager]fileExistsAtPath:Json_path];

if(!blHave) {

NSLog(@"文件不存在:%@",fileName);

}

else{

NSError* err;

BOOLblDele= [fileMremoveItemAtPath:Json_patherror:&err];

if(!blDele) {

NSLog(@"文件删除失败%@",err.userInfo);

}

}

}

//遍历沙盒下所有文件

+(void)seekAllFile{

//得到沙盒文件夹下的所有文件

NSFileManager*fileManager = [NSFileManagerdefaultManager];

NSString*document=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES)objectAtIndex:0];

NSArray*fileList;

fileList =[fileManagercontentsOfDirectoryAtPath:documenterror:NULL];

for(NSString*fileinfileList) {

NSLog(@"%@",file);

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容