【问题标题】:Cannot access a closed Stream. Error throwing [duplicate]无法访问已关闭的 Stream。抛出错误[重复]
【发布时间】:2017-12-15 09:00:03
【问题描述】:

无法访问已关闭的 Stream。抛出错误

如何解决?

【问题讨论】:

  • 请问createPDF 的实现是什么?
  • html1 = "
    AKHILESH
    "; //byte[] buffer = Encoding.ASCII.GetBytes(html); MemoryStream ms = createPDF(html1); //写入文件字符串路径 =Server.MapPath("~/Repositery Data/abc.pdf"); FileStream file = new FileStream(path, FileMode.Create, FileAccess.Write); ms.WriteTo(文件);文件。关闭(); ms.Close();
  • 能否请您编辑问题: 1. 将代码从链接移至问题正文; 2.在问题中添加createPDF实现。
  • 阅读(并拥抱!):How do I ask a good question?
  • 当您使用itext 标记问​​题时,this 可能会解决您的问题。如果是这样,您的问题将与该问题重复。

标签: c# model-view-controller itext


【解决方案1】:

这是因为在内存中打开东西的东西,例如流阅读器,StreamReader 在被处理时会自动关闭底层流。 using 语句会自动执行此操作。

但是,StreamWriter 仍在尝试处理流(此外,编写器的 using 语句现在正在尝试处理 StreamWriter,然后尝试关闭流)。

解决此问题的最佳方法是:不要使用using,也不要丢弃StreamReaderStreamWriter。看到这个question.

【讨论】:

  • 好的,谢谢.. ...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-05
  • 2020-03-09
  • 2013-07-15
相关资源
最近更新 更多