我试图在iPhone应用程序中保存并读回一些存储为NSStrings的应用程序设置,并且遇到了一些麻烦。从NSArray获取NSString
的代码保存的样子:
NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject:accountID];
...
[array writeToFile:[self dataFilePath] atomically:YES];
[array release];
和代码阅读的样子(帐户是一个NSString *):
NSArray *array = [[NSArray alloc] initWithContentsOfFile:filePath];
accountID = [array objectAtIndex:0];
...
[array release];
NSLog(@"Loading settings for: %@", accountID);
的读代码,因为数组后抛出异常发布accountID变量也似乎已经发布(移动NSLog调用之前释放数组工作正常)。所以我猜我正在创建对数组的引用,而不是将数组中包含的实际字符串拉出来。我尝试了几件事情来创建使用数组内容的新字符串,但没有任何运气。