将 NSString 变量添加到 plist 文件中时出错
Posted
技术标签:
【中文标题】将 NSString 变量添加到 plist 文件中时出错【英文标题】:Error adding NSString variable into plist file 【发布时间】:2012-04-13 15:07:50 【问题描述】:我有一个困扰了很长时间的问题...请帮助。
我正在使用以下代码行将记录添加到 plist 文件中:
[data_appo setObject:@"string value" forKey:[NSString stringWithFormat:@"%i",(i-1)]];
它工作正常。现在,如果我尝试从文件中读取字符串而不是添加它(我需要使用不同的键复制值)如下
NSString *string_appo=[data_appo objectForKey:[NSString stringWithFormat:@"%i",j]];
[data_appo setObject:string_appo forKey:[NSString stringWithFormat:@"%i",(i-1)]];
然后我收到 ERROR_EXEC 并且应用程序崩溃...
有什么想法???
任何帮助将不胜感激
提前致谢!
【问题讨论】:
【参考方案1】:您是否在添加后保存了 plist 文件。我经常这样做,我就是这样做的
//find the plist file
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"Notes.plist"];
//set the value for the key
[notesData setValue:textView.text forKey:[NSString stringWithFormat:@"General notes %d",selectedIndex]];
//save the plist file
[notesData writeToFile: path atomically:YES];
//relese and reload it
[notesData release];
notesData = [[NSMutableDictionary alloc] initWithContentsOfFile: path];
我希望这会有所帮助!
【讨论】:
以上是关于将 NSString 变量添加到 plist 文件中时出错的主要内容,如果未能解决你的问题,请参考以下文章
将 Plist (NSString) 解析为 NSDictionary