简介
属性列表是一种明文的轻量级存储方式,其存储格式有多种,最常规格式为XML格式。
在我们创建一个新的项目的时候,Xcode会自动生成一个info.plist文件用来存储项目的部分系统设置。
plist只能用数组(NSArray)或者字典(NSDictionary)进行读取,由于属性列表本身不加密,所以安全性几乎可以说为零。属性列表常用于存储少量不重要的数据。在程序启动后,系统会自动创建一个NSUserDefaults的单例对象,我们可以获取这个单例来存储少量的数据,它会将输出存储在.plist格式的文件中。其优点是像字典一样的赋值方式,缺点是无法存储自定义的数据。
操作方式
students.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>age</key>
<integer>12</integer>
<key>name</key>
<string>张三</string>
</dict>
<dict>
<key>age</key>
<integer>11</integer>
<key>name</key>
<string>李四</string>
</dict>
<dict>
<key>age</key>
<integer>10</integer>
<key>name</key>
<string>王二</string>
</dict>
</array>
</plist>
NSString * filePath = [[NSBundle mainBundle] pathForResource: @"students" ofType: @"plist"];
NSArray * dict = [NSArray arrayWithContentsOfFile:filePath];
NSLog(@"%@",dict);