在.net中打开/写入文件时读取?

时间:2010-09-13 16:09:25

标签: .net file-io

我注意到许多应用程序如firefox允许我在文件仍在下载时观看部分视频(使用VLC)。我想用我的应用程序做到这一点。当我尝试使用VLC打开视频时出现错误。

我写文件时如何允许阅读?我的开放线是

File.Open(fn, FileMode.Append)

我确实附加了,所以我可以恢复部分文件。

2 个答案:

答案 0 :(得分:7)

您应该使用带有Open overload参数的FileShare

File.Open(fn, FileMode.Append, FileAccess.Write, FileShare.Read)

通过这种方式,您明确声明允许其他进程在您仍在写入时打开文件进行读取。

答案 1 :(得分:1)

您将其留给Open()方法来选择传递给FileStream构造函数的FileShare值。哪个是FileShare.None。指定你自己的。