Freigeben über


Stream.ReadAtLeast(Span<Byte>, Int32, Boolean) Methode

Definition

Liest mindestens eine Mindestanzahl von Bytes aus dem aktuellen Stream und erhöht die Position innerhalb des Datenstroms um die Anzahl der gelesenen Bytes.

public int ReadAtLeast (Span<byte> buffer, int minimumBytes, bool throwOnEndOfStream = true);
member this.ReadAtLeast : Span<byte> * int * bool -> int
Public Function ReadAtLeast (buffer As Span(Of Byte), minimumBytes As Integer, Optional throwOnEndOfStream As Boolean = true) As Integer

Parameter

buffer
Span<Byte>

Ein Bereich im Arbeitsspeicher. Wenn diese Methode zurückgibt, werden die Inhalte dieser Region durch die bytes ersetzt, die aus dem aktuellen Stream gelesen werden.

minimumBytes
Int32

Die Mindestanzahl von Bytes, die in den Puffer eingelesen werden sollen.

throwOnEndOfStream
Boolean

true , um eine Ausnahme auszulösen, wenn das Ende des Datenstroms vor dem Lesen minimumBytes von Bytes erreicht wird, false um weniger zurückzugeben, als minimumBytes wenn das Ende des Datenstroms erreicht ist. Der Standardwert lautet true.

Gibt zurück

Die Gesamtanzahl der in den Puffer gelesenen Bytes. Dies ist garantiert größer oder gleich minimumBytes , wenn throwOnEndOfStream ist true. Dies ist weniger als minimumBytes , wenn das Ende des Datenstroms erreicht wird und throwOnEndOfStream ist false. Dies kann kleiner als die Anzahl der im Puffer zugewiesenen Bytes sein, wenn diese anzahl von Bytes derzeit nicht verfügbar ist.

Ausnahmen

minimumBytes ist negativ oder ist größer als die Länge von buffer.

throwOnEndOfStream ist true und das Ende des Datenstroms vor dem Lesen minimumBytes von Datenbytes erreicht wird.

Hinweise

Wenn minimumBytes 0 (null) ist, wird dieser Lesevorgang abgeschlossen, ohne auf verfügbare Daten im Stream zu warten.

Gilt für: