91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c# binaryreader如何處理流式數據

c#
小樊
81
2024-11-24 16:27:00
欄目: 編程語言

在C#中,使用BinaryReader類可以方便地處理流式數據。BinaryReader是從System.IO命名空間中提供的,用于從二進制流中讀取基本數據類型和自定義數據類型。以下是如何使用BinaryReader處理流式數據的一些示例:

  1. 從文件中讀取數據:
using System;
using System.IO;

class Program
{
    static void Main()
    {
        // 創建一個FileStream對象,指向要讀取的文件
        using (FileStream fileStream = new FileStream("example.bin", FileMode.Open, FileAccess.Read))
        {
            // 創建一個BinaryReader對象,用于讀取文件中的數據
            using (BinaryReader binaryReader = new BinaryReader(fileStream))
            {
                // 讀取基本數據類型
                int intValue = binaryReader.ReadInt32();
                float floatValue = binaryReader.ReadSingle();
                double doubleValue = binaryReader.ReadDouble();
                char charValue = binaryReader.ReadChar();
                bool boolValue = binaryReader.ReadBoolean();

                // 讀取字符串
                string stringValue = binaryReader.ReadString();

                // 讀取自定義數據類型(假設有一個名為MyClass的類)
                MyClass myClass = binaryReader.ReadObject<MyClass>();

                Console.WriteLine($"Int Value: {intValue}");
                Console.WriteLine($"Float Value: {floatValue}");
                Console.WriteLine($"Double Value: {doubleValue}");
                Console.WriteLine($"Char Value: {charValue}");
                Console.WriteLine($"Boolean Value: {boolValue}");
                Console.WriteLine($"String Value: {stringValue}");
                Console.WriteLine($"MyClass Value: {myClass}");
            }
        }
    }
}
  1. 從內存中的字節數組讀取數據:
using System;
using System.IO;

class Program
{
    static void Main()
    {
        // 創建一個字節數組
        byte[] byteArray = new byte[] { 1, 2, 3, 4, 5 };

        // 創建一個MemoryStream對象,指向字節數組
        using (MemoryStream memoryStream = new MemoryStream(byteArray))
        {
            // 創建一個BinaryReader對象,用于讀取字節數組中的數據
            using (BinaryReader binaryReader = new BinaryReader(memoryStream))
            {
                // 讀取基本數據類型
                int intValue = binaryReader.ReadInt32();
                float floatValue = binaryReader.ReadSingle();
                double doubleValue = binaryReader.ReadDouble();
                char charValue = binaryReader.ReadChar();
                bool boolValue = binaryReader.ReadBoolean();

                // 讀取字符串
                string stringValue = binaryReader.ReadString();

                // 讀取自定義數據類型(假設有一個名為MyClass的類)
                MyClass myClass = binaryReader.ReadObject<MyClass>();

                Console.WriteLine($"Int Value: {intValue}");
                Console.WriteLine($"Float Value: {floatValue}");
                Console.WriteLine($"Double Value: {doubleValue}");
                Console.WriteLine($"Char Value: {charValue}");
                Console.WriteLine($"Boolean Value: {boolValue}");
                Console.WriteLine($"String Value: {stringValue}");
                Console.WriteLine($"MyClass Value: {myClass}");
            }
        }
    }
}

在這些示例中,我們首先創建了一個FileStreamMemoryStream對象,然后使用BinaryReader對象從流中讀取基本數據類型和自定義數據類型。注意,當使用BinaryReader.ReadObject<T>方法讀取自定義數據類型時,需要確保已將該類的類型添加到程序中。

0
察哈| 五莲县| 湖南省| 靖安县| 泽州县| 岱山县| 三明市| 余江县| 分宜县| 兰溪市| 樟树市| 民和| 长武县| 泸西县| 漠河县| 灯塔市| 宜兰市| 库尔勒市| 永登县| 邳州市| 安国市| 衡东县| 富宁县| 临西县| 罗田县| 和田县| 桐柏县| 丁青县| 定远县| 铜梁县| 芜湖县| 邹平县| 巴中市| 伊吾县| 翁源县| 高邑县| 孟津县| 红安县| 望奎县| 贵德县| 内江市|