删除文件时出错

时间:2014-01-13 12:43:32

标签: ios nsfilemanager

使用此命令删除现有文件时:

[[NSFileManager defaultManager] removeItemAtPath:self.sourceFileName error:&error];

我收到以下错误

  

错误:ImageIO:CGImageReadCreateDataWithMappedFile' open'失败' / Users / asdasd / Library / Application Support / iPhone Simulator / 7.1 / Applications / DD251D7D-F0AF-40E1-A033-F221623D589D / Library / ScanSession / Source / page3.jpeg        错误= 2(没有这样的文件或目录)'

当我将相册中的照片复制到app文件夹时,会发生这种情况。最有趣的是文件存在,但没有完全复制。有没有办法检查文件操作是否完成?

3 个答案:

答案 0 :(得分:1)

检查天气你的档案&目录可用

   for (NSString *filename in files) {
    NSString *path = [yourPath stringByAppendingPathComponent:yourFileName];        
    BOOL isDir;
    if([[NSFileManager defaultManager] fileExistsAtPath:yourPath isDirectory:&isAvilDir] && isAvilDir){
        NSLog(@"%@ Check is a directory", your path file);  
    }
    else {
        NSLog (@"%@ Check is a file",your path file);
    }
}

答案 1 :(得分:0)

我现在有一个类似的问题,好像当你删除一个文件时,你之前可能已经调用的某些其他方法实际上还没有完成。我正在考虑推迟实际删除文件以允许后台进程完成。

答案 2 :(得分:0)

2年前解决了它。忘了发布&关闭这个问题。它是由另一个线程引起的,该文件首先被删除。我认为它是使用CoreData时的标准多线程问题之一