MemoryStream.GetBuffer Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt das Array vorzeichenloser Bytes zurück, aus dem dieser Stream erstellt wurde.
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()
Gibt zurück
- 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.
Ausnahmen
Die MemoryStream
-Instanz wurde nicht mit einem öffentlich sichtbaren Puffer erstellt.
Hinweise
Beachten Sie, dass der Puffer zugeordnete Bytes enthält, die möglicherweise nicht verwendet werden. Wenn beispielsweise die Zeichenfolge "test" in das MemoryStream Objekt geschrieben wird, ist die Länge des von GetBuffer 256 zurückgegebenen Puffers, nicht 4, mit 252 Bytes nicht verwendet. Um nur die Daten im Puffer abzurufen, verwenden Sie die ToArray Methode. Erstellt jedoch ToArray eine Kopie der Daten im Arbeitsspeicher.
Der Puffer kann auch sein null
.
So erstellen Sie eine Instanz mit einem MemoryStream
öffentlich sichtbaren Puffer, verwenden MemoryStreamSie oder MemoryStream(Byte[], Int32, Int32, Boolean, Boolean)MemoryStream(Int32). Wenn der aktuelle Datenstrom geändert werden kann, geben zwei Aufrufe dieser Methode nicht das gleiche Array zurück, wenn das zugrunde liegende Bytearray zwischen Aufrufen geändert wird. Weitere Informationen finden Sie unter Capacity.
Hinweis
Diese Methode funktioniert, wenn der Speicherdatenstrom geschlossen wird.