下面小编就为大家带来一篇iOS 对plist文件进行读写,增删改查的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
对plist文件进行读写
//获取路径对象
NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *path = [pathArray objectAtIndex:0];
//获取文件的完整路径
NSString *filePatch = [path stringByAppendingPathComponent:@"column.plist"];
NSLog(@"%@",filePatch);
//写入数据到plist文件
NSMutableDictionary *dic1 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"小小虎",@"name",@"5",@"age",@"boy",@"sex",nil];
NSMutableDictionary *dic2 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"小小兮",@"name",@"6",@"age",@"girl",@"sex",nil];
//将上面2个小字典保存到大字典里面
NSMutableDictionary *dataDic = [NSMutableDictionary dictionary];
[dataDic setObject:dic1 forKey:@"一年级"];
[dataDic setObject:dic2 forKey:@"二年级"];
//写入plist里面
[dataDic writeToFile:filePatch atomically:YES];
//读取plist文件的内容
NSMutableDictionary *dataDictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:filePatch];
NSLog(@"---plist一开始保存时候的内容---%@",dataDictionary);
对pilst文件进行修改
//修改字典里面的内容,先按照结构取到你想修改内容的小字典
NSMutableDictionary *dd = [dataDictionary objectForKey:@"一年级"];
[dd setObject:@"我改名字了哦" forKey:@"name"];
[dd setObject:@"我添加的新内容" forKey:@"content"];
[dd removeObjectForKey:@"age"];
//修改成功以后,将这个小字典重新添加到大字典里面
[dataDictionary setObject:dd forKey:@"一年级"];
[dataDictionary writeToFile:filePatch atomically:YES];
NSLog(@"---plist做过操作之后的字典里面内容---%@",dataDictionary);
删除
//清除plist文件,可以根据我上面讲的方式进去本地查看plist文件是否被清除
NSFileManager *fileMger = [NSFileManager defaultManager];
NSString *xiaoXiPath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]stringByAppendingPathComponent:@"xiaoxi.plist"];
//如果文件路径存在的话
BOOL bRet = [fileMger fileExistsAtPath:xiaoXiPath];
if (bRet) {
NSError *err;
[fileMger removeItemAtPath:xiaoXiPath error:&err];
}
以上这篇iOS 对plist文件进行读写,增删改查的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程学习网。
沃梦达教程
本文标题为:iOS 对plist文件进行读写,增删改查的实例
猜你喜欢
- Android MaterialButton使用实例详解(告别shape、selector) 2023-06-16
- Flutter实现底部和顶部导航栏 2022-08-31
- SurfaceView播放视频发送弹幕并实现滚动歌词 2023-01-02
- Android实现轮询的三种方式 2023-02-17
- 详解flutter engine 那些没被释放的东西 2022-12-04
- 最好用的ios数据恢复软件:PhoneRescue for Mac 2023-09-14
- iOS 对当前webView进行截屏的方法 2023-03-01
- 作为iOS开发,这道面试题你能答出来,说明你基础很OK! 2023-09-14
- Android实现监听音量的变化 2023-03-30
- Android studio实现动态背景页面 2023-05-23
