iPhone:使用简单的键/值字符串创建二进制Plist的最快方法

时间:2010-05-05 18:06:11

标签: iphone cocoa objective-c plist

使用简单的基于字符串的键/值对在iPhone上创建二进制plist的最佳方法是什么?我需要创建一个包含配方和成分列表的plist。然后,我希望能够将其读入NSDictionary,以便我可以执行类似

的操作
NSString *ingredients = [recipes objectForKey:@"apple pie"];

我正在通过HTTP请求读取XML数据文件,并希望将所有键值对解析为plist。 XML可能类似于:

<recipes>
   <recipe> 
     <name>apple pie</name>
     <ingredients>apples and pie</ingredients>
   </recipe>
   <recipe>
     <name>cereal</name>
     <ingredients>milk and some other ingredients</ingredients>
   </recipe>
</recipes>

理想情况下,我可以在运行时将它写入plist,然后能够读取它并在运行时将其转换为NSDictionary。

2 个答案:

答案 0 :(得分:0)

Creating a Property List in Objective-C

这包含使用CoreFoundation或Cocoa创建属性列表文件的信息。

答案 1 :(得分:0)

针对您的具体情况,请查看NSDictionary的界面并使用:

- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile;
+ (id)dictionaryWithContentsOfFile:(NSString *)path;

如果您只需要一个相当小的字典,您也可以尝试NSUserDefaults。

- (void)setObject:(id)value forKey:(NSString *)defaultName;
- (NSDictionary *)dictionaryForKey:(NSString *)defaultName;