如何关闭使用相同底层流的 StreamReader
和 StreamWriter
?
var stream = /*...*/;
var reader = new StreamReader(stream);
var writer = new StreamWRiter(stream);
我知道我可以简单地忽略关闭读取器/写入器并关闭底层流。然而,这似乎有点 hack,因为它是基于这样的假设,即读者/作者没有任何东西可以处理(将来可能不会是这种情况)。
我知道这已在 .NET 4.5 中通过额外的构造函数参数得到解决,但在 .NET 4.5 发布之前,我该如何以正确的方式解决它?
最佳答案
确保您首先Flush()
编写器。
然后只需处理或关闭 2 个装饰器和流(嵌套使用即可)。
关于c# - StreamReader 和 StreamWriter 在同一个 Stream 上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10580260/