使用C#BinaryReader类

BinaryReader有两种流

第一种:文件流(File Stream)

顾名思义,存储在文件中的,文件流用于读写文件,它将数据读取或写入到磁盘上的文件中。你可以使用 File.Open 方法创建文件流,指定文件的路径和打开方式(例如 FileMode.Create 用于创建新文件,FileMode.Open 用于打开已存在的文件)。
例如

using System;
using System.IO;

public class Program
{
    public static void Main()
    {
        // 写入数据到文件流
        using (FileStream fileStream = new FileStream("data.txt", FileMode.Create))
        {
            byte[] data = { 10, 20, 30, 40, 50 };
            fileStream.Write(data, 0, data.Length);
        }

        // 读取文件流中的数据
        using (FileStream fileStream = new FileStream("data.txt", FileMode.Open))
        {
            byte[] buffer = new byte[5];
            fileStream.Read(buffer, 0, buffer.Length);
            
            // 打印读取的数据
            Console.WriteLine("读取的数据:");
            foreach (byte value in buffer)
            {
                Console.WriteLine(value);
            }
        }
    }
}


第二种:内存流(Memory Stream)

当我们需要在内存中操作数据时,可以使用内存流(MemoryStream)而不是文件流。内存流是基于内存的流,它将数据存储在内存中而不是硬盘上的文件。

using System;
using System.IO;

public class Program
{
    public static void Main()
    {
        // 创建一个内存流
        using (MemoryStream memoryStream = new MemoryStream())
        {
            // 写入数据到内存流
            byte[] data = { 10, 20, 30, 40, 50 };
            memoryStream.Write(data, 0, data.Length);
            
            // 将流的位置重置为开头
            memoryStream.Seek(0, SeekOrigin.Begin);
            
            // 从内存流中读取数据
            byte[] buffer = new byte[data.Length];
            memoryStream.Read(buffer, 0, buffer.Length);
            
            // 打印读取的数据
            Console.WriteLine("读取的数据:");
            foreach (byte value in buffer)
            {
                Console.WriteLine(value);
            }
        }
    }
}


猜你喜欢

转载自blog.csdn.net/qq_42489774/article/details/131397767