📜  c# write byte[] to stream - C# (1)

📅  最后修改于: 2023-12-03 14:59:41.177000             🧑  作者: Mango

C#中将byte[]写入Stream

在C#中,我们可以使用Stream来读取和写入数据流,这对于处理二进制数据非常有用。下面是如何将byte[]写入Stream的几种方法。

方法一:使用Write方法

可以使用Stream的Write方法将byte[]写入Stream。Write方法接受三个参数:byte[]数组,开始索引和要写入的字节数。下面是一个使用Write方法将byte[]写入Stream的示例代码:

// 创建一个写入到内存流的流对象
Stream stream = new MemoryStream();
byte[] bytes = new byte[] { 0, 1, 2, 3 };
stream.Write(bytes, 0, bytes.Length);
方法二:使用BinaryWriter类

BinaryWriter类是一个包装器,用于写入二进制数据类型到流中。它提供了一些有用的方法,如WriteInt32,WriteBoolean等,可以将特定类型的数据写入到流中。下面是一个使用BinaryWriter将byte[]写入Stream的示例代码:

// 创建一个写入到内存流的流对象
Stream stream = new MemoryStream();
byte[] bytes = new byte[] { 0, 1, 2, 3 };
BinaryWriter writer = new BinaryWriter(stream);
writer.Write(bytes, 0, bytes.Length);
方法三:使用StreamWriter类

StreamWriter类是一个包装器,它提供了写入文本内容到流中的方法。但是,我们也可以使用它来写入byte[]数据到流中。下面是一个使用StreamWriter将byte[]写入Stream的示例代码:

// 创建一个写入到内存流的流对象
Stream stream = new MemoryStream();
byte[] bytes = new byte[] { 0, 1, 2, 3 };
StreamWriter writer = new StreamWriter(stream);
writer.BaseStream.Write(bytes, 0, bytes.Length);

以上是几种将byte[]写入Stream的方法,你可以根据自己的需求来选择最适合你的方式。