不,流通常引用某种类型的本地资源(套接字、文件句柄等),因此它们无法被克隆或序列化。此外,许多流是只进的,不支持查找,因此您甚至可能无法从流中重新读取。
不过,您可以从可读流中将其复制到可以作为字节数组移动的 MemoryStream 中。
请参阅以下帖子以获取显示如何执行此操作的代码片段:如何将一个流的内容复制到另一个流? https://stackoverflow.com/questions/230128/best-way-to-copy-between-two-stream-instances-c
public static void CopyStream(Stream input, Stream output)
{
byte[] buffer = new byte[32768];
while (true)
{
int read = input.Read (buffer, 0, buffer.Length);
if (read <= 0)
return;
output.Write (buffer, 0, read);
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)