我试图得到一个文件的最后修改日期:获取EXEC_BAD_ACCESS时,我得到了NSFileModificationDate
NSFileManager *fm = [[NSFileManager alloc] init];
NSError *err;
NSDate *lastModif = [[fm attributesOfItemAtPath:filename error:&err] objectForKey:NSFileModificationDate];//filename is ok ;-)
if(err == nil) {
[lastModif retain];
//I can put a NSLog of lastModif here, it works !!
NSTimeInterval lastModifDiff = [lastModif timeIntervalSinceNow];//crash here
}
我不明白为什么的NSDate似乎被释放,为什么保留不保留它。
谢谢你,如果你有任何想法...
我暂时没有对lastModifDiff做任何事情,它在分配时崩溃,因为根据调试器,lastModif似乎为零。 – Toto 2010-03-24 13:38:43
我正在运行您的代码。在设置lastModifDiff后,我拿出不必要的版本并添加一个NSLog()。这两个值都是为我设定的。你确定你的文件名是正确的吗? – greg 2010-03-24 13:42:31
是的,我可以使用NSKeyedUnarchiver加载它,[fm fileExistsAtPath:filename]是YES。 – Toto 2010-03-24 13:47:52