我看到了以下两个问题:
如何检查文件是否正在使用中
有没有方法可以检查文件是否正在使用中
但是它们都没有提供我所需要的所有信息,我需要更多关于一些答案的澄清,但这些问题已经几年了,所以我不确定此时是否应该从那里获取答案。因此,我发布了一个新问题,类似于:
public string myFile;
myFile = @"C:\somepath\somefile.pdf";
if (myFile isinuseorwhatever)
{
MessageBox.Show("File is in use!! Close it and try again");
return;
}
else
{
MessageBox.Show("That worked. Good job!")
//Do Stuff and lots of lines of stuff.
}
我可以使用异常处理来解决这个问题,但问题在于我需要在运行许多代码之前进行检查。
我感觉我需要创建一个类来进行检查,然后运行该类。老实说,我对编程还比较新,所以我不太清楚类是如何工作的。
我知道可以使用 try
和 catch
,但这里无法使用它们,因为异常发生在 try 块的最后几行代码中,所以所有的操作都会在遇到异常之前完成。例如,这个程序会复制一个文件,重命名它,将它移动到另一个目录,然后删除原始文件,这是它做的最后一件事情。如果用户正在使用该文件,程序将执行所有操作,但当尝试删除该文件时,会抛出一个异常。我需要在复制、重命名、移动等操作之前抛出异常。