你怎么知道一个流是否关闭?

Max*_*AMM 9 .net c# stream

我有一个带输入流的方法:

public void Export(Stream finalOutPutStream)
Run Code Online (Sandbox Code Playgroud)

出于测试目的,我用内存流来调用它,如下所示:

// When
_exporter.Export(new System.IO.MemoryStream());
Run Code Online (Sandbox Code Playgroud)

但是,当在方法中,我想写这个内存流时,我得到一个ObjectDisposedException.

这个流没有包含在using语句中,我没有明确地调用.Dispose().

发生了什么 ?

谢谢 :)

- 编辑:我的不好,问题来自第三方作家(DotNetZip).当我调用zip.Save(new MemoryStream())时会发生异常.我会在他们的论坛上问我的问题.对不起,谢谢你的帮助.

Kir*_*huk 7

:您可以使用查询流的可用性CanRead,CanSeek,CanWrite性质.

  • CanRead 来自关闭进程的流始终返回 True (3认同)
  • 这不起作用。 (2认同)