将 MemoryStream 对象传递给 FileStream 对象

本文关键字:对象 FileStream MemoryStream | 更新日期: 2023-09-27 18:31:47

我有一个MemoryStream对象,我想将其写入文件并在以下passFile方法中将其作为参数传递。passFile方法目前接受FileStream对象作为参数,但是有没有办法将MemoryStream对象转换为FileStream对象?帮助

MemoryStream ms = new MemoryStream();
public void passFile (FileStream file){
}

将 MemoryStream 对象传递给 FileStream 对象

不,不能强制转换它:MemoryStreamFileStream是继承层次结构中的同级,则不能相互转换。

如果无法重写该方法以采用Stream,则可以将MemoryStream的内容写入临时文件,然后根据该文件的内容打开FileStream

您可以使用Stream抽象,并将任何类型的流作为FileStreamMemoryStream等传递... 对于示例:

public void passFile(Stream stream)
{
   // process stream
}