c# - StreamReader 和 StreamWriter 在同一个 Stream 上?

标签 c# stream

如何关闭使用相同底层流的 StreamReaderStreamWriter

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/

相关文章:

java - C# 相当于 Java 的 DataOutputStream?

java - 读取输出时如何处理 Java Processes 孙子进程?

c# - 如何根据位于 updatePanel 中的 DataGrid 中所做的行选择来更新控件 [DataGrid、TextBoxes 和 Label]?

c# - 如何在 UWP 中通过多个页面传递对象

c# - Web API 模型绑定(bind)

java - 如何使用异步和使用多线程在Java中获取列表列表的交集

c# - Php 转 Unity Json/数组 返回 null

c# - 重命名为带波浪符号的文件夹

amazon-web-services - 有没有办法清除 dynamoDB 流?

ffmpeg - 使用#EXT-X-DISCONTINUITY-SEQUENCE [ffmpeg] 下载 ts 流