iOS plist文件增删改查

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

二. 首先是使用xcode自带的功能使用plist
1. 根据图片的顺序创建一个新的plist文件

创建plist文件

2. 给plist命名
  • 需要注意的问题
    • 命名的时候不能用Info.plist , INfo.plist, xxxInfo.plist等形式,否则会出现下面的情况,因为系统中存在一个Info.plist文件,会发生冲突

给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数据容器进行的增删,然后保存就好

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/10128.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GaussDB数据库SQL系列-复合查询

目录 一、前言 二、复合查询基础 三、实际应用示例 1、使用UNION合并查询结果 2、使用INTERSECT找出共同元素 3、使用EXCEPT排除特定结果 四、高级技巧 1、子查询实例 2、JOIN的应用 五、总结 一、前言 GaussDB是华为自主创新研发的分布式关系型数据库,具…

按键的短按、长按和连续的划分

在实际生活中,我们使用到的按键在短按、长按和按键松开时都会触发不同的功能。按键短按后松开和长按后松开的应用比短按和长按的应用较少,我了解的按键短按后松开和长按后松开的应用是在点动控制和长动控制中。这里主要讨论按键的短按、长按和连续这三种…

postgresql主从复制

用vmware 搭建的两台虚拟机 操作系统:Ubuntu 24.04 Server版 数据库:postgresql 16.2 主库:192.168.2.11 从库:192.168.2.12 如果遇到网络无法上网,可参考一下 Vmware 搭建的Ubuntu 24.04 网络配置-CSDN博客 1.两…

LED显示屏的部件组成及相关知识

LED显示屏作为现代化信息传播的重要载体,在各种场所得到了广泛应用。其功能强大,效果生动,但其背后的部件组成却是复杂而精密的。本文将介绍LED显示屏的主要部件组成及相关知识,以帮助读者更好地理解LED显示屏的工作原理和构造。 …

day07beef-xss之根据beef-xss获取cookies

1.安装 apt-get update apt-get install beef-xss 若报错运行不了尝试 apt remove ruby apt remove beef-xss apt-get install ruby apt-get install ruby-dev libpcap-dev gem install eventmachine apt-get install beef-xss 2.运行 beef-xss 运行成功会自动弹出浏览框。 攻…

提高Rust安装与更新的速度

一、背景 因为rust安装过程中,默认的下载服务器为crates.io,这是一个国外的服务器,国内用户使用时,下载与更新的速度非常慢,因此,我们需要使用一个国内的服务器来提高下载与更新的速度。 本文推荐使用字节…

企业微信集成H5授权登录相关知识(二)

流程: 1.前端请求企业微信获取code:官网网页授权链接 2.企业微信返回的code请求后端判断是否已绑定系统账户 3.后端根据企业微信code,accessToken获得userId 4.userId获取user进行oauth2授权方式进行免密登录 相关知识: 一&a…

SS-PEG-SS可以与多种底物进行反应,生成具有良好稳定性的键合结构

【试剂详情】 英文名称 SS-PEG-SS 中文名称 琥珀酰亚胺丁二酸酯-聚乙二醇-琥珀酰亚胺丁二酸酯 外观性状 由分子量决定,固体或者液体。 分子量 0.4k,0.6k,1k,2k,3.4k,5k,10k(可…

初识多线程

1. 前置知识——进程 在学习多线程前需要了解操作系统中的基本知识,这里简单回顾下。 1.1 进程控制块 一个进程对应着一个进程控制块PCB,PCB是一个用于管理和维护进程信息的数据结构,这个数据结构中大致包含下面内容(并不完整&…

金仓面对面 | 人大金仓×安硕信息共话金融信用风险管理数字化转型之道

金仓面对面 在数字化浪潮的推动下,人大金仓携手行业先锋,共同开启一场关于创新与转型的思想盛宴——金仓面对面。这不仅是一场对话,更是一次智慧的火花碰撞,一次行业数字化转型洞察的深度挖掘。 行业精英汇聚:我们荣幸…

云南区块链商户平台:抓包技术自制开票工具(二)

前言 上节我们分析了云南区块链商户平台的登录接口以及数据加密、解密,本节我们将构建一个项目框架,将大致的雏形制作出来 说明 由于我们使用开票软件都是在 云南区块链商户平台上操作,如果再开发电脑端就显得没必要,思考良久&…

在线旅游网站,基于 SpringBoot+Vue+MySQL 开发的前后端分离的在线旅游网站设计实现

目录 一. 前言 二. 功能模块 2.1. 登录界面 2.2. 管理员功能模块 2.3. 用户功能模块 三. 部分代码实现 四. 源码下载 一. 前言 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势,旅游网站当然…

分布式与集群的区别

先说区别: 分布式是并联工作的,集群是串联工作的。 分布式中的每一个节点都可以做集群。而集群并不一定就是分布式的。 集群举例:比如新浪网,访问的人很多,他可以做一个集群,前面放一个相应的服务器&…

Covalent Network(CQT)通过 “新曙光” 计划实现重要里程碑,增强以太坊时光机,提供 30% 的年化质押收益率

Covalent Network(CQT)作为集成超过 280 条区块链,并服务于超过 2.8 亿个钱包的领先结构化数据基础设施层,宣布了其战略计划 “新曙光” 中的一个重要进展。随着网络升级并完成了准备工作的 75%,这将为即将部署的以太坊…

JUC下CountDownLatch详解

详细介绍 CountDownLatch是Java并发包java.util.concurrent中提供的一个同步工具类,它允许一个或多个线程等待其他线程完成操作后再继续执行。这个工具类基于一个计数器,计数器的初始值可以由构造函数设定。线程调用countDown()方法会将计数器减1&#x…

uniapp——弹出键盘遮挡住输入框 textarea,处理方法

案例 在写输入框的时候会遇见 键盘遮挡住部分textarea框的一部分&#xff0c;使用cursor-spacing处理即可 修改后&#xff1a; 其他问题&#xff1a; 调起键盘输入时&#xff0c;不希望上方的内容被顶上去 代码 <view class"commentBox" :style"botto…

爬虫学习(4)每日一笑

代码 import requests import re import osif __name__ "__main__":if not os.path.exists("./haha"):os.makedirs(./haha)url https://mlol.qt.qq.com/go/mlol_news/varcache_article?docid6321992422382570537&gameid3&zoneplat&webview…

Linux 认识与学习Bash——3

在Linux bash中&#xff0c;数据流重定向是指将命令的输出从默认的标准输出&#xff08;通常是终端&#xff09;重定向到其他位置&#xff0c;如文件或另一个命令的输入。这是通过使用特定的符号来实现的。例如&#xff0c;>用于将输出重定向到文件&#xff0c;而<用于将…

Proxmox VE 8 用SDN隔离用户网络

作者&#xff1a;田逸&#xff08;formyz&#xff09; 最新发布的Proxmox VE&#xff08;以下简称PVE&#xff09; 8在Web管理后台集成了易于操作的SDN&#xff08;软件定义网络&#xff09;功能插件&#xff0c;其实质是对不同的PVE用户指定不同的网络&#xff0c;进行逻辑隔离…

[移动通讯]【无线感知-P1】[从菲涅尔区模型到CSI模型-3][Mobius transformations-7】【Inversion】

前言&#xff1a; mobius map 里面比较难的是inversion &#xff0c;林菲尔德学院&#xff08;Linfield College&#xff09; Michael P. Hitchman. 有本书详细介绍一下该方向的一些原理&#xff0c;例子. Whitman College Book: 《Geometry with an Introduction to Cosmic T…