次の方法で共有


Stream.ReadAtLeast(Span<Byte>, Int32, Boolean) メソッド

定義

現在のストリームから少なくともバイト数を読み取り、ストリーム内の位置を読み取ったバイト数だけ進めます。

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

パラメーター

buffer
Span<Byte>

メモリの領域。 このメソッドが戻ると、この領域の内容は、現在のストリームから読み取られたバイトに置き換えられます。

minimumBytes
Int32

バッファーに読み込む最小バイト数。

throwOnEndOfStream
Boolean

trueストリームの末尾がバイトのfalse読み取minimumBytesり前に到達した場合に例外をスローする場合は 。ストリームの末尾に達した場合よりもminimumBytes小さい値を返す場合は 。 既定では、 trueです。

戻り値

バッファーに読み取られた合計バイト数。 が の場合throwOnEndOfStream、これは 以上であることがminimumBytes保証されますtrue。 これは、ストリームの末尾に達しthrowOnEndOfStreamfalse、 が の場合よりもminimumBytes小さくなります。 現在使用できないバイト数が多い場合は、バッファーに割り当てられたバイト数より小さくすることができます。

例外

minimumBytes が負の値であるか、 の長さを buffer超えています。

throwOnEndOfStreamtrue で、データのバイトを読み取 minimumBytes る前にストリームの末尾に到達します。

注釈

が 0 (ゼロ) の場合 minimumBytes 、ストリーム内の使用可能なデータを待機せずに、この読み取り操作が完了します。

適用対象