博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IOS中的属性列表----Property List
阅读量:6265 次
发布时间:2019-06-22

本文共 1718 字,大约阅读时间需要 5 分钟。

  属性列表,是一种用来存储串行化后的对象的文件。因为扩展名为plist ,因此通常被称为 plist文件。

  plist文件通常用于储存用户设置,也可以用于存储捆绑的信息,其内容为xml格式。它可以在程序运行期间动态的创建和读写,因此可以用于少量数据时候的数据持久化。

  NSUserDefaults类提供了一个与默认系统进行交互的编程接口,用户可以在程序运行的时候读写数据,实现了数据的持久化。而用于存储NSUserDefaults的文件实质上就是一个属性列表文件。

<一> 自定义属性列表存取

// 获得文件路径NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];NSString *filePath = [documentPath stringByAppendingPathComponent:@"student.plist"];   // 往plist文件中存储的数据NSMutableDictionary *dict = [NSMutableDictionary dictionary];NSDictionary *stu1= @{
@"idNum":@"1",@"name": @"jereh"}; [dict setValue:stu1 forKey:@"stu1"];// 新数据写入plist文件 [dict writeToFile:filePath atomically:YES]; // 读取plist文件中数据NSMutableDictionary *dicNow = [[NSMutableDictionary alloc] initWithContentsOfFile:filePath];int idNum = [[dicNow objectForKey:@"idNum"] intValue];NSString *name = [dicNow objectForKey:@"name"];

小结:

  1. 属性列表适合存储轻量级的本地数据
  2. 支持存储的数据格式为Foundation框架中得数据类型NSNumber,NSString,NSDate,NSArray,NSDictionary,BOOL, NSData
  3. 属性列表不能存储自定义的对象、
  4. 属性列表的根目录只能为NSDictionary或者NSArray
  5. 以键值对的形式存储
  6. 存储时间为整体应用程序存续时间,如果想要删除,需要删除整体应用程序

<二> NSUserDefaults

// 创建NSUserDefaults对象    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];        //存数据    [defaults setObject:@"jereh" forKey:@"name"];    //将缓存中的数据存放在磁盘上    [defaults synchronize];        //取数据    NSString *name = [defaults objectForKey:@"name"];        //删除数据    [defaults removeObjectForKey:@"name"];   [defaults synchronize];

小结:

  1. NSUserDefaults适合存储轻量级的本地数据
  2. 支持存储的数据格式为Foundation框架中的数据类型
  3. 不能存储自定义的对象
  4. 以键值对的形式存储
  5. 存储时间为整体应用程序存续时间,如果想要删除,需要删除整体应用程序

 

作者:
出处:
 
本文版权归和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
 

转载于:https://www.cnblogs.com/jerehedu/p/4323793.html

你可能感兴趣的文章
ubuntu下搭建JAVA开发环境【转】
查看>>
和菜鸟一起学c之gcc编译过程及其常用编译选项【转】
查看>>
Linux内核驱动--硬件访问I/O【原创】
查看>>
使用NSUserDefaults保存自定义对象(转)
查看>>
linux上查看swf文件.靠谱
查看>>
sql server两种分页方法
查看>>
一本离线的百科全书,当然无法和一本在线的百科全书抗衡。所谓的常识,在你的思考中被重构,根源就在于在线的崛起。...
查看>>
Floyd算法
查看>>
CentOS 6.4下安装Oracle 11gR2
查看>>
linux建立用户 详细
查看>>
jquery获取radio的值
查看>>
创建索引
查看>>
jQuery基础-创建HTML
查看>>
spring boot 热部署
查看>>
NYOJ-214 单调递增子序列(二) AC 分类: NYOJ ...
查看>>
[HDU 4417]Super Mario
查看>>
clip-path的妙用
查看>>
在FMOD中使用customRollOff实现更自然的声音衰减
查看>>
java日常-map转成json
查看>>
动画view
查看>>