我收到以下错误:
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,还是我的问题出现在其他地方?
答案 0 :(得分:3)
我自己发现了这个问题。我尝试将目录移动到其自身的子目录中,当然这不起作用。
答案 1 :(得分:1)
您没有直接使用任何流或IDisposable
,因此没有任何内容可以关闭或处理。
正如错误所示:您确定没有其他进程正在使用这些文件/目录吗?
另外,你说你正在使用数组中的目录和文件。你究竟是如何使用它们的?
答案 2 :(得分:0)
我有一个解决方案,它引用另一个在后台运行的解决方案。最简单的选择是清理/重建/构建并重新运行这两个项目。试过其他不那么干扰的建议,但没有用!