博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS plist 详解
阅读量:2394 次
发布时间:2019-05-10

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

plist 全名 Property List,属性列表文件,它是一种用来存储串行化后的对象的文件,属性列表文件的扩展名为 .plist ,因此通常被称为 plist文件。文件是xml格式的。plist文件 通常用于储存用户设置,也可以用于存储捆绑的信息
创建 plist 文件的方式
1> 右键 New File
1> 创建出来的 plist,可以直接点击添加新列
2> 可直接通过文件操作创建 plist 文件
3> 读取 plist 中的信息
NSString
*plistPath = [[
NSBundle
mainBundle
]
pathForResource
:
@"test"
ofType
:
@"plist"
];
//
通过文件名
扩展名获取文件路径
NSMutableDictionary *data = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath];// 读取路径文件中的信息
3> 向 plist文件中写入信息
NSMutableDictionary
*data = [[
NSMutableDictionary
alloc
]
init
];
//
读取路径文件中的信息
[data setObject:@"value_a" forKey:@"key_a"];
[data
setObject
:
@"value_b"
forKey
:
@"key_b"
];
[data
setObject
:
@"value_c"
forKey
:
@"key_c"
];
//
获取应用程序沙盒的
Documents
目录
NSArray
*paths =
NSSearchPathForDirectoriesInDomains
(
NSDocumentDirectory
,
NSUserDomainMask
,
YES
);
NSString
*plistPath1 = [paths
objectAtIndex
:
0
];
//
得到完整的文件名
NSString
*filename = [plistPath1
stringByAppendingPathComponent
:
@"test123456.plist"
];
[data
writeToFile
:filename
atomically
:
YES
];
//
读取文件中的信息就可以判断是否文件操作成功
NSMutableDictionary
*data1 = [[
NSMutableDictionary
alloc
]
initWithContentsOfFile
:filename];
NSLog(@"%@", data1);
4> 修改 plist文件中的信息
//
获取应用程序沙盒的
Documents
目录
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString
*plistPath1 = [paths
objectAtIndex
:
0
];
//
得到完整的文件名
NSString
*filename = [plistPath1
stringByAppendingPathComponent
:
@"test123456.plist"
];
NSMutableDictionary
*data = [[
NSMutableDictionary
alloc
]
initWithContentsOfFile
:filename];
//
读取路径文件中的信息
//
设置属性值
,
没有的数据就新建,已有的数据就修改
[[data
objectForKey
:
@"users"
]
setObject
:
@"
逗比
"
forKey
:
@"name"
];
[data
removeObjectForKey
:
@"key_c"
];
//
删除数据
[data
setObject
:
@"cccccccccccc"
forKey
:
@"key_c"
];
//
测试时无法直接修改已存在
key
的值,可以先删除再添加方式来修改
[data
writeToFile
:filename
atomically
:
YES
];
//
读取文件中的信息就可以判断是否文件操作成功
NSMutableDictionary
*data1 = [[
NSMutableDictionary
alloc
]
initWithContentsOfFile
:filename];
NSLog(@"%@", data1);
你可能感兴趣的文章
变态的静态资源缓存与更新(超详细好文)
查看>>
关于lvs均衡负载socket服务的配置实现
查看>>
Qt学习旅程(1)
查看>>
[转]CentOS 5.4挂载可读写NTFS
查看>>
SmartChineseAnalyzer的对中文开源社区是一大贡献
查看>>
[转]Apache Mahout 简介
查看>>
[转]分布式key-value存储方案介绍:Cassandra,LightCloud,TokyoCabinet
查看>>
[转]HDFS+MapReduce+Hive+HBase十分钟快速入门
查看>>
stdlib中的xmalloc,xfree,xinit_mempool
查看>>
关于Java Advanced Imaging(JAI)的一点积累
查看>>
Spirit越狱iPhone/iPod touch/iPad 3.1.3/3.2固件(Windows)
查看>>
[转]Adobe发布Puppet Recipes for Hadoop
查看>>
[转]mysql里not in语句怎么写
查看>>
outlook 2010 突破附件大小限制
查看>>
[转][Magick++] How to convert jpg image to raw 32 bit float
查看>>
[转]数据类型 -- uint32_t 类型
查看>>
[转]C语言系统资源控制(getrlimit && setrlimit)
查看>>
[转]linux文件系统基础知识
查看>>
[转]Centos5 下安装/配置lvm使用reiserfs文件系统
查看>>
[转]Use ReiserFS in CentOS 5(lvm)
查看>>