目标c:目录文件的问题

时间:2011-05-20 17:01:20

标签: objective-c ios nsmutablearray plist

我有这段代码:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"File.plist"]; 


if([array writeToFile:path atomically: YES]){
    NSLog(@"write succesful");}
else {
    NSLog(@"write failed");
}

我在文件夹资源中创建了一个文件“File.plist”,我希望在其中存储一个NSMutableArray。当我调用此方法时,控制台中的消息是“写成功”,但如果我在

中更改路径
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"FileAbstract.plist"];

消息永远都是“写成功?为什么?我改变了路径中的名字。

1 个答案:

答案 0 :(得分:1)

在此代码中,您正在写入文档目录,该目录与项目中的资源文件夹无关。您无法通过运行应用程序来更改资源文件夹中的文件。在第一次运行中,您已经编写了文件File.plist,并且在第二次运行中,您已在文档目录中编写了文件FileAbstract.plist。它们与资源文件夹中的File.plist无关。

编辑:要读取数组中文件的内容:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"File.plist"];

NSArray *array = [NSArray arrayWithContentsOfFile:path];