如何避免“;由另一过程使用”;在C#中使用File.Copy时

本文关键字:File Copy 何避免 过程 | 更新日期: 2023-09-27 18:28:23

我正在尝试使用以下代码将文件从路径复制到另一个路径:

 File.Copy(oldPath, newPath);.

newPath表示路径和文件名,类似于C:'txt.txt

oldPath表示路径和文件名,类似于d:'d.txt

我得到以下异常:

C: ''txt.txt从另一个进程使用

为什么会出现此问题?

如何避免“;由另一过程使用”;在C#中使用File.Copy时

有八种可能发生的异常:UnauthorizedAccessException、ArgumentException、ArgementNullException、PathTooLongException、DirectoryNotFoundException、FileNotFoundException、FileNotFoundException,IOException或NotSupportedException(请参阅MSDN文档http://msdn.microsoft.com/en-us/library/c6cfw35a.aspx以查找这些异常的详细信息)。

你指出,文件被创建它的进程锁定。这应该解决你的问题:

using (FileStream fs = File.Create("c:''michal.txt")) 
{ 
}
File.Copy("c:''michal.txt", "c:''michal_new.txt");
File.Delete("c:''michal.txt");
File.Delete("c:''michal_new.txt");

通常是因为Windows中的一个程序正在使用您试图复制的文件——在我的案例中,Visual Studio cs使用的文件在调试文件中。。。