mscorlib.dll
中发生了System.IO.IOException
类型的未处理异常
其他信息:该进程无法访问文件pathOfMyFile
,因为它正由另一个进程使用。
这是我到达File.Delete
时遇到的错误
我的代码如下所示:
File.Copy(frompath, topath1);
File.Copy(frompath, topath2);
System.GC.Collect();
System.GC.WaitForPendingFinalizers();
File.Delete(frompath);
frompath
是.png图片的路径。
我能做些什么才能做到这一点?
答案 0 :(得分:0)
首先,您可以删除两个垃圾回收调用,因为它们将自动处理。
如果副本只是花时间完成并且文件系统要释放句柄,则可以尝试重复删除直到它工作。您可以忽略IOExceptions但请确保处理其他类型。
while (true)
{
Thread.Sleep(50);
try
{
File.Delete(frompath);
break;
}
catch (IOException)
{
// Ignore IO exceptions
}
catch (Exception)
{
// Handle other exceptions
}
}