错误“mscorlib.dll中发生了'System.IO.IOException'类型的未处理异常”

时间:2013-11-03 21:41:00

标签: c# .net io

我收到以下错误:

  

mscorlib.dll中出现未处理的“System.IO.IOException”类型异常

     

其他信息:该进程无法访问该文件,因为该文件正由另一个进程使用。

从以下代码行:

Directory.Move(location, newLocation);

其中location和newLocation是定义的字符串。

在此之前,我使用以下I / O方法:

String[] directories = Directory.GetDirectories(location);
String[] files = Directory.GetFiles(location);
Directory.Exists(location);

其中,位置字符串与当前给我错误的行中的位置字符串相同。

然后我继续使用数组中的目录和文件,但从不打开文件。

是否有类似关闭的东西需要应用于getDirectories和getFiles,还是我的问题出现在其他地方?

3 个答案:

答案 0 :(得分:3)

我自己发现了这个问题。我尝试将目录移动到其自身的子目录中,当然这不起作用。

答案 1 :(得分:1)

您没有直接使用任何流或IDisposable,因此没有任何内容可以关闭或处理。

正如错误所示:您确定没有其他进程正在使用这些文件/目录吗?

另外,你说你正在使用数组中的目录和文件。你究竟是如何使用它们的?

答案 2 :(得分:0)

我有一个解决方案,它引用另一个在后台运行的解决方案。最简单的选择是清理/重建/构建并重新运行这两个项目。试过其他不那么干扰的建议,但没有用!