Ser*_*nce 0 iphone cocoa-touch ios
我正在尝试将一个简单的数组写入plist文件,然后再检索它.我有以下代码:
+ (NSString*) dataFilePath
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory, NSUserDomainMask, YES);
NSString *documentDirectory = [paths objectAtIndex:0];
NSString *dataFilePath = [documentDirectory stringByAppendingPathComponent:@"TipAlertViewDefaults.plist"];
return dataFilePath;
}
+ (NSArray*) tipAlertViewDefaults
{
NSString *dataFilePath = [self dataFilePath];
NSLog(@"DataFilePath: %@", dataFilePath);
NSMutableArray *tipAlertViewDefaults;
if ([[NSFileManager defaultManager] fileExistsAtPath:dataFilePath])
{
NSLog(@"File Exists");
tipAlertViewDefaults = [[NSMutableArray alloc] initWithContentsOfFile:dataFilePath];
}
else
{
NSLog(@"File Doesn't Exist");
tipAlertViewDefaults = [[NSMutableArray alloc] initWithObjects:[NSNumber numberWithBool:NO], nil];
[tipAlertViewDefaults writeToFile:dataFilePath atomically:YES];
}
return tipAlertViewDefaults;
}
Run Code Online (Sandbox Code Playgroud)
我调用这个方法两次,在第一次它不应该找到文件并且第一次写它.然后第二个调用应该能够找到该文件,但事实并非如此.有人能看到我在哪里错了吗?
小智 5
再一次,Xcode愚蠢的自动完成让你输了:NSDocumentationDirectory应该真的NSDocumentDirectory.
iOS上不存在Documentation目录,因此您无法在那里写.
| 归档时间: |
|
| 查看次数: |
127 次 |
| 最近记录: |