c# - 如何测试当前是否正在写入文件

标签 c# .net

我有一个应用程序必须检查文件夹并读取复制到其中的所有文件。 如何测试当前是否正在写入该文件夹中的文件?我只想读文件 已将所有数据写入其中并已关闭。

最佳答案

它不干净,但它有效:

try
{
    using (Stream stream = new FileStream("File.txt"))
    {
    }
} 
catch 
{
    // Check if file is in use (or whatever else went wrong), and do any user communication that you need to
}

我不是特别喜欢使用异常作为条件,但据我所知,这是最简单、最好(也是唯一可靠)的方法。

关于c# - 如何测试当前是否正在写入文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2515766/

相关文章:

c# - 停止 ComboBox 中所选项目的颜色突出显示?

c# - 隐藏面板应该强制下面的控件向上移动并调整表单大小

.net - 使用最新的 Xamarin Studio,构建错误说明 "Can' t find .NetPortable”框架

.net - 为什么 .NET Framework v1.1.4322 文件夹中缺少 "Microsoft.VisualBasic.Compatibility.dll"?

ASP.NET 将 DbContext 注入(inject) Identity UserManager

c# - 创建空的 IAsyncEnumerable

c# - 使用一个 DBContext 在 Entity Framework 中执行多个 Linq 到实体查询仅连接一次到数据库

c# - 绑定(bind)可空值时未设置值

.net - 来自.net背景的Delphi项目层次结构

c# - 使用正则表达式按逻辑拆分字符串