c# - 为什么我可以使用 FileInfo 删除 .NET 中打开的图像文件?

标签 c# .net file-io

我有一个小实用程序,它使用 .NET 的 FileInfo.Delete() 方法从文件夹中删除文件。基本上,如果文件当前打开,我可以捕获 IOException。这适用于除图像文件(JPG、GIF、BMP 等)之外的所有文件。当打开这些类型的文件时,程序仍然能够删除它们而不会抛出任何异常。你以前遇到过这个吗?如何检测这些类型的文件是否已打开,以便我可以防止删除。

谢谢, 民国

最佳答案

文件打开时是否可以删除它更多地取决于打开文件的程序而不是文件类型。例如,如果应用程序只是读取文件内容然后关闭文件(例如记事本),您将能够在文件“打开”时删除文件(意味着它显示在记事本中)。另一方面,Excel 以一种您通常甚至无法复制它的方式保持文件打开。

关于c# - 为什么我可以使用 FileInfo 删除 .NET 中打开的图像文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/966131/

相关文章:

c# - 必须做什么才能将引用类型的值用作字典键?

.net - 通过.NET中的套接字发送纯文本

c# - 公共(public)语言运行时何时终止?

c# - 如何显示任务栏通知?

file-io - 如何倒序写入文件

c - fwrite 是原子的吗?

c++ - 奇怪的文本模式文件输出行为

javascript - 使用 JavaScript 将文件从 Base 64 转换为 Base 64,然后使用 C# 将其转换回文件

c# - WebResource.axd 未在 HTML 中呈现

c# - 我可以针对 LINQ 函数测试单个对象吗?