您可以使用以下代码来检查文件是否在别的程序中打开:

try
{
    using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite, FileShare.None))
    {
        // 如果文件没有被其他程序打开,这段代码将会执行
    }
}
catch (IOException ex)
{
    // 如果文件被其他程序打开,这段代码将会执行
    Console.WriteLine(ex.Message);
}

在这个代码中,我们使用了 FileStream 类来打开文件。我们将 FileMode 参数设置为 Open,这表示我们要打开一个现有文件。我们还将 FileAccess 参数设置为 ReadWrite,这表示我们要读取和写入该文件。最后,我们将 FileShare 参数设置为 None,这表示我们不希望与其他程序共享该文件。

如果文件已经在别的程序中打开,FileStream 类将引发 IOException 异常。我们可以捕获这个异常,并在需要的时候处理它。

C# 检查文件是否被其他程序打开

原文地址: https://www.cveoy.top/t/topic/oQiv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录