我正在学习Objective-C,我在将文本文件传递给NSFileManager类时遇到了问题。我在我的程序所在的同一目录中创建了新的空文件“testfile”,但是NSFileManager以某种方式找不到这个文件。我不知道问题是什么:
NSString *fileName = @"testfile";
NSFileManager *fileMgr;
NSDictionary *attrib;
fileMgr = [NSFileManager defaultManager];
NSLog(@"%@",[fileMgr currentDirectoryPath]);
// verifying the test file exists
if([fileMgr fileExistsAtPath: fileName] == NO) {
NSLog(@"File doesn't exist");
return 1;
}
以下是我程序的其他截图
答案 0 :(得分:0)
很可能确定该文件不在程序运行的目录中。当您从Xcode运行程序时,它通常直接在Xcode项目的顶层运行。 NSLog应该准确地告诉您哪个目录。
请注意,默认情况下,Xcode具有整个项目的顶级目录和每个目标的代码的子目录。因此,如果您的项目直接位于您的主目录中,Xcode将在
中运行该程序/Users/<your home>/prog36
但您的文本文件(位于目标的目录中)位于
中/Users/<your home>/prog36/prog36
请注意两个嵌套目录,均称为prog36