使用简单的基于字符串的键/值对在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。
答案 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;