我发现,有在使用FileStream结合使用BufferedStream是没有意义的,因为它有它自己的缓冲策略。然而,我想知道一两件事:的FileStream和它的缓冲策略
FileStream fsWithBuffer = new FileStream("buf.dat", FileMode.OpenOrCreate,
FileAccess.ReadWrite, FileShare.None, 255);
fsWithBuffer.WriteByte((byte)4);
fsWithBuffer.Dispose();
这个代码写字节的一部分到指定的文件。在此之前,这个字节保存在内部缓冲区中,所以我明白,如果我没有调用Dispose()方法,则不会写入文件。现在
,我的问题是:有时我们不想把所有的数据在一个FileStream的缓冲,让我们说这是为了只对小型写入。是否有可能将一些数据直接放入与FileStream相关的文件中(而不是将其放入内部缓冲区)?
谢谢!
你是问,如果你可以用'FileStream'不带缓冲?我没有看到这一点,你仍然需要处理FileStream类。 –
你总是可以调用'Flush',尽管你不会用这种方式绕过缓冲区(而且我没有看到没有一个这样做的想法。 –
好的,我明白了。谢谢:)无论如何,我猜Flush是我在这种情况下寻找的。 –