Objective-C 中的属性列表与环境交互
1. 属性列表格式转换
在处理属性列表时,我们常常需要在不同格式之间进行转换。在 OS X 系统中,不能以 OpenStep 格式写入属性列表,但可以使用另外两种格式:二进制格式和 XML 格式。一般来说,建议使用二进制格式存储私有数据,使用 XML 格式存储用户可能希望用其他工具编辑的数据。
1.1 代码示例
以下是一个将属性列表转换为二进制格式的代码示例:
NSString *file =
[NSString stringWithUTF8String: argv[1]];
NSData *data = [NSData dataWithContentsOfFile:
file];
NSPropertyListFormat fmt;
id plist = [NSPropertyListSerialization
propertyListWithData: data
options: 0
format: &fmt
error: NULL];
if (fmt == NSPropertyListBinaryFormat_v1_0)
{
return 0;
}
data = [NSPropertyListSerialization
dataWithPropertyList: plist
format: NSPropertyListBinaryFormat_v1_0
options: 0
error: NULL];
[data writeToFile: file atomically: NO];
超级会员免费看
订阅专栏 解锁全文
8

被折叠的 条评论
为什么被折叠?



