属性列表文件是一种XML文件,Foundation框架中的数组和字典等都可以与属性列表文件互相转换,如图1所示。
图2是属性列表文件NotesList.plist,它是一个数组,其中有两个元素,其元素结构是字典类型。图3是对应的NSArray,它是与NotesList.plist属性列表文件对应的集合对象。
数组类NSArray和字典类NSDictionary提供了读写属性列表文件的方法,其中NSArray类的方法如下所示。
+ arrayWithContentsOfFile:
静态创建工厂方法,用于从属性列表文件中读取数据,创建NSArray对象。Swift语言没有对应的构造器。
– initWithContentsOfFile:
构造器,用于从属性列表文件中读取数据,创建NSArray对象。Swift语言表示为convenience init?(contentsOfFile aPath:String)。
– writeToFile:atomically:
该方法把NSArray对象写入到属性列表文件中,它的第一个参数是文件名,第二个参数为是否使用辅助文件,如果为true,则先写入到辅助文件中,然后将辅助文件重新命名为目标文件,如果为false,则直接写入到目标文件。
NSDictionary类的方法如下所示。
+ dictionaryWithContentsOfFile:
静态创建工厂方法,用于从属性列表文件中读取数据,创建NSDictionary对象。Swift语言没有对应的构造器。
– initWithContentsOfFile:
构造器,用于从属性列表文件中读取数据,创建NSDictionary对象。Swift语言表示成convenience init?(contentsOfFile Path:String)。
– writeToFile:atomically:
将NSDictionary对象写入到属性列表文件中,它的一个参数是文件名,第二个参数为是否使用辅助文件,如果为true,则先写入到辅助文件中,然后将辅助文件重新命名为目标文件,如果为false,则直接写入到目标文件。