MemoryStream.GetBuffer 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
回傳該串流所產生的無符號位元組陣列。
public:
virtual cli::array <System::Byte> ^ GetBuffer();
public virtual byte[] GetBuffer();
abstract member GetBuffer : unit -> byte[]
override this.GetBuffer : unit -> byte[]
Public Overridable Function GetBuffer () As Byte()
傳回
該資料流所由的位元組陣列,或若在建構當前實例時未提供位元組陣列, MemoryStream 則為底層陣列。
例外狀況
該 MemoryStream 實例並未建立公開可見的緩衝區。
備註
請注意,緩衝區包含可能未被使用的已分配位元組。 例如,若字串「test」寫入物件中 MemoryStream ,回傳的 GetBuffer 緩衝區長度為 256,而非 4,且有 252 位元組未使用。 若要只取得緩衝區中的資料,請使用該 ToArray 方法;但會 ToArray 將資料複製到記憶體中。
緩衝區也可以是 null。
要建立 MemoryStream 具有公開可見緩衝區的實例,請使用 MemoryStream、 MemoryStream(Byte[], Int32, Int32, Boolean, Boolean)、 或 MemoryStream(Int32)。 如果目前的串流是可調整大小的,若底層位元組陣列在兩次呼叫間被調整大小,呼叫此方法時不會回傳相同的陣列。 如需詳細資訊,請參閱 Capacity。
Note
此方法在記憶體串流關閉時有效。