Sdílet prostřednictvím


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

Definice

Přečte alespoň minimální počet bajtů z aktuálního datového proudu a posune pozici v rámci streamu o počet přečtených bajtů.

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

Parametry

buffer
Span<Byte>

Oblast paměti. Když se tato metoda vrátí, obsah této oblasti se nahradí bajty načtenými z aktuálního datového proudu.

minimumBytes
Int32

Minimální počet bajtů, které se mají načíst do vyrovnávací paměti.

throwOnEndOfStream
Boolean

true vyvolá výjimku, pokud se před čtením minimumBytes bajtů dosáhne konce datového proudu; false vrátí se méně, než minimumBytes když je dosaženo konce datového proudu. Výchozí formát je true.

Návraty

Celkový počet bajtů načtených do vyrovnávací paměti. Je zaručeno, že bude větší nebo roven minimumBytes , pokud throwOnEndOfStream je truehodnota . To bude menší, než minimumBytes když se dosáhne konce datového proudu a throwOnEndOfStream bude false. To může být menší než počet bajtů přidělených ve vyrovnávací paměti, pokud tento počet bajtů není aktuálně k dispozici.

Výjimky

minimumBytes je záporná nebo větší než délka buffersouboru .

throwOnEndOfStream je true a před čtením minimumBytes bajtů dat se dosáhne konce datového proudu.

Poznámky

Pokud minimumBytes je hodnota 0 (nula), bude tato operace čtení dokončena bez čekání na dostupná data ve streamu.

Platí pro