3

我正在开发一个接收 FileStream 的项目,它应该使用返回 MemoryStream 的方法接收它。

如何将 MemoryStream 转换为 FileStream?我无法触摸这些代码,这就是整个问题。

4

2 回答 2

2

如果我正确理解了您的问题,则您有一个返回 MemoryStream 的方法,并且您需要将该流传递给采用 FileStream 的方法。我见过几个例子,当参数类型可能是 Stream 时,我的同事编写了带有 FileStream 参数的方法。这是一个很好的例子,说明为什么最好对参数使用派生较少的类型。

我能想到的唯一解决方案是将内存流写入临时文件:为临时文件创建文件流,将内存流复制到文件流中,然后将位置设置为零或关闭流并打开同一文件上的新流,以传递给该方法。

如果我误解了你的问题,请澄清。

于 2012-04-16T22:29:59.260 回答
0

这已在Convert a Stream to a FileStream in C# 中讨论过

于 2012-04-16T22:15:23.953 回答