C#中的ByteBuffer
類型并不直接支持動態擴容。但是,你可以使用System.IO.MemoryStream
或System.Collections.Generic.List<byte>
來實現類似的功能。這兩個類都可以在需要時自動擴展其內部緩沖區。
System.IO.MemoryStream
:using System.IO;
// 創建一個空的MemoryStream,它會根據需要自動擴展
MemoryStream byteBuffer = new MemoryStream();
// 寫入數據
byte[] data = new byte[] { 1, 2, 3 };
byteBuffer.Write(data, 0, data.Length);
// 讀取數據
byteBuffer.Position = 0;
byte[] readData = new byte[byteBuffer.Length];
byteBuffer.Read(readData, 0, readData.Length);
// 獲取當前緩沖區大小
int bufferSize = (int)byteBuffer.Capacity;
System.Collections.Generic.List<byte>
:using System.Collections.Generic;
// 創建一個空的List<byte>,它會根據需要自動擴展
List<byte> byteBuffer = new List<byte>();
// 添加數據
byte[] data = new byte[] { 1, 2, 3 };
byteBuffer.AddRange(data);
// 獲取當前緩沖區大小
int bufferSize = byteBuffer.Capacity;
這兩種方法都可以實現類似于動態擴容的功能。你可以根據自己的需求選擇合適的方法。