iOS plist文件增删改查

一. plist简介
  • plist文件,即属性列表文件,全名是Property List,这种文件的扩展名为.plist,因此,通常被叫做plist文件。它是一种用来存储串行化后的对象的文件,在iOS开发中通常用来存储用户设置,还可以用于存储程序中经常用到而不经常改动的数据。下面就看一下如何创建和读写plist文件。
  • plist 只能存储基本的数据类型 和 array 字典

二. 首先是使用xcode自带的功能使用plist
1. 根据图片的顺序创建一个新的plist文件
2. 给plist命名
  • 需要注意的问题
    • 命名的时候不能用Info.plist , INfo.plist, xxxInfo.plist等形式,否则会出现下面的情况,因为系统中存在一个Info.plist文件,会发生冲突
3. 然后就可以在xcode中编辑plist文件了
4. 使用plist文件
  • 这里一般只能在读取plist文件,具体获取plist文件路径的代码为:

    复制代码
      NSString *filePath = [[NSBundle mainBundle] pathForResource:@"newsModel" ofType:@"plist"];
  • 然后是获取plist里面的数据,这里跟下面是相同的


三. 使用代码的方式使用plist
1. 写入plist代码演示
复制代码
    NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsPath = [path objectAtIndex:0];
    NSString *plistPath = [documentsPath stringByAppendingPathComponent:@"newsTest.plist"];
    //创建数据
    NSMutableDictionary *newsDict = [NSMutableDictionary dictionary];
    //赋值
    [newsDict setObject:@"zhangsan" forKey:@"name"];
    [newsDict setObject:@"12" forKey:@"age"];
    [newsDict setObject:@"man" forKey:@"sex"];
    //数据写入plist
    [newsDict writeToFile:plistPath atomically:YES];
2. 读取plist文件代码演示
复制代码
    //获取plist文件的路径
    NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *path1 = [pathArray objectAtIndex:0];
    NSString *myPath = [path1 stringByAppendingPathComponent:@"newsTest.plist"];

    //根据之前保存的容器类型读取数据
    //是数组就用数组来获取数据,是字典就用字典来获取数据
    //newsModel.plist文件
    //NSMutableArray *data1 = [[NSMutableArray alloc] initWithContentsOfFile:filePath];
    //newsTest.plist文件
    NSMutableDictionary *data2 = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];
3. plist的增删操作
  • 增删操作就是对读取后的plist数据容器进行的增删,然后保存就好
相关推荐
ii_best7 小时前
安卓/ios脚本开发辅助工具按键精灵横纵坐标转换教程
android·开发语言·ios·安卓
先飞的笨鸟9 小时前
2026 年 Expo + React Native 项目接入微信分享完整指南
前端·ios·app
初级代码游戏9 小时前
iOS开发 SwiftUI 5 : 文本输入 密码输入 多行输入
ios·swiftui·swift
iosTiov10 小时前
ios生态的分发密钥:企业签、V3签、TF签深度解析与选型指南
安全·ios·团队开发·苹果签名·稳定
00后程序员张11 小时前
在 iPhone 上进行 iOS 网络抓包的实践经验
android·ios·小程序·https·uni-app·iphone·webview
2501_9159184111 小时前
介绍如何在电脑上查看 iPhone 和 iPad 的完整设备信息
android·ios·小程序·uni-app·电脑·iphone·ipad
晨枫阳11 小时前
iOS Universal Links配置
ios
2501_9160088911 小时前
没有 Mac 如何在 Windows 上创建 iOS 应用描述文件
android·macos·ios·小程序·uni-app·iphone·webview
北京自在科技1 天前
苹果iOS 26.3实现跨安卓数据无缝迁移
android·ios·findmy
郑梓斌1 天前
Luban 2 Flutter:一行代码在 Flutter 开发中实现图片压缩功能
flutter·ios