1

我收到以下错误:

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 还是我的问题出在其他地方?

4

3 回答 3

3

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

于 2013-11-04T19:15:25.297 回答
1

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

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

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

于 2013-11-03T21:44:23.727 回答
0

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

于 2015-11-26T13:39:22.833 回答