C# MemoryStream类怎么使用

1390
2023/8/18 9:30:46
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

MemoryStream类是在内存中读写二进制数据的流。可以通过以下步骤使用MemoryStream类:

  1. 创建一个MemoryStream对象:可以使用无参构造函数MemoryStream()创建一个空的MemoryStream对象,也可以使用带参数的构造函数MemoryStream(byte[] buffer)创建一个包含指定字节数组的MemoryStream对象。

  2. 写入数据:可以使用Write方法将数据写入MemoryStream对象。例如,使用memoryStream.Write(buffer, 0, buffer.Length)方法将字节数组buffer写入到MemoryStream对象中。

  3. 读取数据:可以使用Read方法从MemoryStream对象中读取数据。例如,使用memoryStream.Read(buffer, 0, buffer.Length)方法将MemoryStream对象中的数据读取到字节数组buffer中。

  4. 定位指针:可以使用Seek方法在MemoryStream对象中定位指针的位置。例如,使用memoryStream.Seek(offset, SeekOrigin.Begin)方法将指针定位到指定的偏移量offset处。

  5. 清空数据:可以使用SetLength方法将MemoryStream对象的长度截取为0,从而清空MemoryStream对象中的数据。例如,使用memoryStream.SetLength(0)方法清空MemoryStream对象。

以下是一个使用MemoryStream类的示例:

byte[] buffer = Encoding.UTF8.GetBytes("Hello, World!");
using (MemoryStream memoryStream = new MemoryStream())
{
// 写入数据
memoryStream.Write(buffer, 0, buffer.Length);
// 定位指针
memoryStream.Seek(0, SeekOrigin.Begin);
// 读取数据
byte[] readBuffer = new byte[buffer.Length];
memoryStream.Read(readBuffer, 0, readBuffer.Length);
// 输出结果
Console.WriteLine(Encoding.UTF8.GetString(readBuffer));
}

上述代码将字符串"Hello, World!"转换为字节数组,并使用MemoryStream类将字节数组写入到内存中。然后,通过定位指针和读取数据,将数据从MemoryStream对象中读取出来并输出到控制台上。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: c# command怎样处理输入输出流