// 写入plist
- (void)addplist:(id)arr {
NSLog(@"写入plist=%@=",arr);
//1. 创建一个plist文件
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *path=[paths objectAtIndex:0];
NSLog(@"path = %@",path);
NSString *name =@"pingbi.plist";
NSString *filename=[path stringByAppendingPathComponent:name];
NSFileManager* fm = [NSFileManager defaultManager];
if ([self isPlistFileExists:name]==YES) {
NSLog(@"存在");
// 获取旧数据新数据组合写入
NSMutableArray *farr =[NSMutableArray arrayWithContentsOfFile:filename];
NSLog(@"保存前查询=%ld=%@",farr.count,farr);
if (farr.count !=0) {
NSString *str = [NSString stringWithFormat:@"%@",arr];
[farr addObject:str];
NSLog(@"添加后数据=%@=",farr);
}else{
NSLog(@"保存前查询为空");
}
NSLog(@"写入plist=%@=",farr);
[farr writeToFile:filename atomically:YES];
NSMutableArray * newarr = [NSMutableArray arrayWithContentsOfFile:filename];
NSLog(@"保存后的数据=%@",newarr);
}else{
NSLog(@"不存在");
[fm createFileAtPath:filename contents:nil attributes:nil];
//创建一个arr,写到plist文件里
NSMutableArray *arrxin = [NSMutableArray arrayWithObject:arr];
[arrxin writeToFile:filename atomically:YES];
NSMutableArray * newarr = [NSMutableArray arrayWithContentsOfFile:filename];
NSLog(@"保存后的数据=%@",newarr);
}
}
//判断沙盒中名为plistname的文件是否存在
- (BOOL) isPlistFileExists:(NSString *)name{
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *path=[paths objectAtIndex:0];
NSLog(@"path = %@",path);
NSString *filename=[path stringByAppendingPathComponent:name];
NSFileManager *fileManager = [NSFileManager defaultManager];
if( [fileManager fileExistsAtPath:filename]== NO ) {
NSLog(@"not exists");
return NO;
}else{
return YES;
}
}
/**
* //读plist文件
*/
- (id)fetchPlist {
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *path=[paths objectAtIndex:0];
NSLog(@"path = %@",path);
NSString *filename=[path stringByAppendingPathComponent:@"pingbi.plist"];
id arr = [NSMutableArray arrayWithContentsOfFile:filename];
NSLog(@"查询结果=%@=",arr);
return arr;
}
- (void)deletePlist {
NSString *name =@"pingbi.plist";
//清除plist文件,可以根据我上面讲的方式进去本地查看plist文件是否被清除
NSFileManager *fileMger = [NSFileManager defaultManager];
NSString *xiaoXiPath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:name];
//如果文件路径存在的话
BOOL bRet = [fileMger fileExistsAtPath:xiaoXiPath];
if (bRet) {
NSLog(@"清空了屏蔽");
NSError *err;
[fileMger removeItemAtPath:xiaoXiPath error:&err];
}
}