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

Definition

Liest mindestens eine Minimale Anzahl von Bytes aus dem aktuellen Datenstrom und wechselt 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 Speicherbereich. Wenn diese Methode zurückgegeben wird, werden die Inhalte dieses Bereichs durch die aus dem aktuellen Datenstrom gelesenen Bytes ersetzt.

minimumBytes
Int32

Die Mindestanzahl der Bytes, die in den Puffer gelesen werden sollen.

throwOnEndOfStream
Boolean

true um eine Ausnahme auszuwerfen, 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 als oder gleich minimumBytes , wenn throwOnEndOfStream dies der Fall ist true. Dies ist kleiner als minimumBytes , wenn das Ende des Datenstroms erreicht ist und throwOnEndOfStream ist false. Dies kann kleiner als die Anzahl der im Puffer zugeordneten Bytes sein, wenn diese anzahl Bytes derzeit nicht verfügbar sind.

Ausnahmen

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

throwOnEndOfStream ist true und das Ende des Datenstroms erreicht wird, bevor Datenbytes gelesen minimumBytes werden.

Hinweise

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

Gilt für: