我正在使用这段代码来尝试检索文件的最后修改日期:
NSError *error = nil;
NSDictionary *attributes = [[NSFileManager defaultManager] attributesOfItemAtPath: myFilePath error:&error];
if (attributes != nil) {
NSDate *date = (NSDate*)[attributes objectForKey: NSFileModificationDate];
NSLog(@"Date modiifed: %@", [date description]);
}
else {
NSLog(@"Not found");
}
这适用于主包中的文件,但如果文件位于应用程序文档文件夹的子目录中,则不适用,myFilePath
如下所示:
/Users/User/Library/Application Support/iPhone Simulator/6.0/Applications/The App ID Number/Documents/mySubdirectory/My Saved File
它不断返回“未找到”。
我知道该文件在那里,因为我可以使用 finder 来查看它。我也尝试删除文件名中的空格,但这没有效果。
错误日志说没有这样的文件或目录,所以当我试图将文件复制到文档目录时,它看起来一定出了问题。
奇怪的是,遍历文档子目录并contentsOfDirectoryAtPath
显示文件存在。
我已经尝试对路径进行硬编码并以编程方式检索它,其中:
*myFolder = [documentsDirectory stringByAppendingPathComponent:@"myFolder"];
*myFilePath = [myFolder stringByAppendingPathComponent:theFileName];
谁能看到我哪里出错了?