MemoryStream.GetBuffer メソッド

定義

このストリームの作成元の符号なしバイトの配列を返します。

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()

返品

Byte[]

このストリームの作成元のバイト配列。現在のインスタンスの構築中にバイト配列が MemoryStream コンストラクターに提供されなかった場合は、基になる配列。

例外

MemoryStream インスタンスは、パブリックに表示されるバッファーを使用して作成されませんでした。

注釈

バッファーには、未使用の可能性がある割り当てられたバイトが含まれていることに注意してください。 たとえば、文字列 "test" が MemoryStream オブジェクトに書き込まれる場合、 GetBuffer から返されるバッファーの長さは 4 ではなく 256 で、252 バイトは使用されません。 バッファー内のデータのみを取得するには、 ToArray メソッドを使用します。ただし、 ToArray はメモリ内にデータのコピーを作成します。

バッファーを nullすることもできます。

パブリックに表示されるバッファーを持つ MemoryStream インスタンスを作成するには、 MemoryStreamMemoryStream(Byte[], Int32, Int32, Boolean, Boolean)、または MemoryStream(Int32)を使用します。 現在のストリームのサイズが変更可能な場合、基になるバイト配列が呼び出し間でサイズ変更された場合、このメソッドの 2 つの呼び出しは同じ配列を返しません。 追加情報については、Capacityを参照してください。

Note

このメソッドは、メモリ ストリームが閉じられたときに機能します。

適用対象

こちらもご覧ください