MemoryStream.GetBuffer Method

Definition

Gibt das Array vorzeichenloser Bytes zurück, aus dem dieser Stream erstellt wurde.Returns the array of unsigned bytes from which this stream was created.

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

Returns

Byte[]

Das Bytearray, aus dem der Stream erstellt wurde, oder das zugrunde liegende Array, wenn für den MemoryStream-Konstruktor beim Erstellen der aktuellen Instanz kein Bytearray bereitgestellt wurde.The byte array from which this stream was created, or the underlying array if a byte array was not provided to the MemoryStream constructor during construction of the current instance.

Exceptions

Die MemoryStream-Instanz wurde nicht mit einem öffentlich sichtbaren Puffer erstellt.The MemoryStream instance was not created with a publicly visible buffer.

Remarks

Beachten Sie, dass der Puffer zugeordnete Bytes enthält, die möglicherweise nicht verwendet werden.Note that the buffer contains allocated bytes which might be unused. Wenn z. b. die Zeichenfolge "Test" in das MemoryStream Objekt geschrieben wird, ist die Länge des von GetBuffer zurückgegebenen Puffers 256, nicht 4, wobei 252 Bytes nicht verwendet werden.For example, if the string "test" is written into the MemoryStream object, the length of the buffer returned from GetBuffer is 256, not 4, with 252 bytes unused. Wenn Sie nur die Daten im Puffer abrufen möchten, verwenden Sie die ToArray-Methode. ToArray erstellt jedoch eine Kopie der Daten im Arbeitsspeicher.To obtain only the data in the buffer, use the ToArray method; however, ToArray creates a copy of the data in memory.

Der Puffer kann auch nullwerden.The buffer can also be null.

Verwenden Sie MemoryStream, MemoryStream(Byte[], Int32, Int32, Boolean, Boolean)oder MemoryStream(Int32), um eine MemoryStream Instanz mit einem öffentlich sichtbaren Puffer zu erstellen.To create a MemoryStream instance with a publicly visible buffer, use MemoryStream, MemoryStream(Byte[], Int32, Int32, Boolean, Boolean), or MemoryStream(Int32). Wenn der aktuelle Stream in der Größe geändert werden kann, geben zwei Aufrufe dieser Methode nicht dasselbe Array zurück, wenn die Größe des zugrunde liegenden Bytearrays zwischen den Aufrufen geändert wird.If the current stream is resizable, two calls to this method do not return the same array if the underlying byte array is resized between calls. Weitere Informationen finden Sie unter Capacity.For additional information, see Capacity.

Note

Diese Methode funktioniert, wenn der Arbeitsspeicherstream geschlossen wird.This method works when the memory stream is closed.

Applies to

See also