我对于在 Objective C 中保存文件确实很陌生,但我想要完成的是在启动时读取位于文档目录中的 plist 文件,或者如果它不存在则创建它。
它应该被读入 NSMutableDictionary。稍后在应用程序中,我应该能够将项目保存到 NSMutableDict,类别为键 + 文本。
启动前viewWillUnload中的NSMutableDictionary应该再次保存到plist文件中。
我已经创建了 plist,但我需要一种以正确的方式写入 NSMutableDictionary 的方法(类别和我的 result.text 字符串。
我还需要将 NSMutableDictionary 保存到 plist 文件并在启动时将 plist 读入字典中。
对此的一些帮助会很棒:D
谢谢大家。
在保存文件无效中我正在这样做:
storeDict = [[ NSMutableDictionary alloc]
init];
[storeDict setObject:resultText.text forKey:@"kvitto"];
[storeDict setObject:kategori forKey:@"kategori"];
[storeDict writeToFile:[self saveFilePath] atomically:YES];
saveFilePath 看起来像这样:
- (NSString *) saveFilePath {
NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
return [[path objectAtIndex:0] stringByAppendingString:@"savefile.plist"];
}
这些值是从用户扫描的代码中收集的字符串,因此不必担心它们。 那么我如何正确保存它并保留 savefile.plist 中已存在的数据。
再次感谢
最佳答案
如果您希望字典和字典中包含的数组也是可变的,请执行以下操作:
NSData *data = [NSData dataWithContentsOfFile:path];
NSError *error;
storeDict =
[NSPropertyListSerialization
propertyListWithData:data
options:NSPropertyListMutableContainersAndLeaves
format:nil
error: &error];
关于xcode - 将plist读入nsmutabledictionary,更新字典然后再次保存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15342554/