在C#中使用FileStream追加模式编写文件时阻塞文件

时间:2012-09-20 19:06:16

标签: c# filestream

我使用Filestream缓冲区将数据附加到文件,见下文:

using (FileStream filestream = new FileStream(stringPathFile, FileMode.Append, FileAccess.Write, FileShare.None))
{                                                   
    filestream .Write(stuff.buffer, 0, stuff.bytesRead);
}  

作为debuging,当写一个更大的文件时,我看到文件每4096个字节被写入目的地,我能够将文件移动到其他地方。在完成写入文件之前,如何阻止文件移动?

由于

1 个答案:

答案 0 :(得分:-1)

使用FileShare.ReadWrite代替FileShare.None

编辑:在VB.NET 2010中进行一些测试后(我目前无法访问C#),我复制了你的问题。似乎解决问题的方法是避免使用using ...

FileStream filestream = new FileStream(stringPathFile, FileMode.Append, FileAccess.Write, FileShare.None) {
filestream.Write(stuff.buffer, 0, stuff.bytesRead); }