SequenceReader<T> 結構

定義

提供用來從 ReadOnlySequence<T> 讀取二進位資料和文字資料的方法,並著重於效能以及為最小或零的堆積配置。

generic <typename T>
 where T : value classpublic value class SequenceReader
public ref struct SequenceReader<T> where T : struct
type SequenceReader<'T (requires 'T : struct)> = struct
Public Structure SequenceReader(Of T)

類型參數

T

唯讀序列的類型。

繼承
SequenceReader<T>

建構函式

SequenceReader<T>(ReadOnlySequence<T>)

在指定的 ReadOnlySequence<T> 上建立 SequenceReader<T>

屬性

Consumed

取得讀取器所處理的 T 值總數。

CurrentSpan

取得 Span<T>,其在 Sequence 中包含目前的區段。

CurrentSpanIndex

取得 CurrentSpan 中的索引。

End

取得值,指出 Sequence 是否不再有任何資料。

Length

取得讀取器 Sequence 中的項目計數。

Position

取得目前在 Sequence 中的位置。

Remaining

取得讀取器 Sequence中的其餘專案。

Sequence

取得讀取器的基礎 ReadOnlySequence<T>

UnreadSequence

取得 Sequence 的未讀取部分。

UnreadSpan

取得 CurrentSpan 的未讀取部分。

方法

Advance(Int64)

依指定的項目數將讀取器向前移。

AdvancePast(T)

前進超過指定的 value 個連續執行個體。

AdvancePastAny(ReadOnlySpan<T>)

跳過任何指定的 values 個連續執行個體。

AdvancePastAny(T, T)

前進超過兩個指定值之一的連續執行個體。

AdvancePastAny(T, T, T)

前進超過三個指定值之一的連續執行個體。

AdvancePastAny(T, T, T, T)

前進超過四個指定值之一的連續執行個體。

AdvanceToEnd()

將讀取器移至序列結尾。

IsNext(ReadOnlySpan<T>, Boolean)

檢查在唯讀範圍中所指定值是否為序列中的下一個。

IsNext(T, Boolean)

檢查所指定值是否為序列中的下一個。

Rewind(Int64)

依指定的項目數將讀取器向後移。

TryAdvanceTo(T, Boolean)

搜尋指定的分隔符號,並選擇性前進超過它 (如果找到)。

TryAdvanceToAny(ReadOnlySpan<T>, Boolean)

搜尋任何數量的指定分隔符號,並選擇性前進超過找到的第一個分隔符號。

TryCopyTo(Span<T>)

如果沒有足夠的資料填入,請將資料從目前位置複製到指定的目的地範圍。

TryPeek(Int64, T)

在指定的位移處瞄核下一個值,而不需讓讀取器前進。

TryPeek(T)

查看下一個值,但不使讀取器前進。

TryRead(T)

讀取下一個值,並使讀取器前進。

TryReadExact(Int32, ReadOnlySequence<T>)

嘗試從目前序列中確切 count 讀取值。

TryReadTo(ReadOnlySequence<T>, ReadOnlySpan<T>, Boolean)

嘗試讀取資料,直到指定為唯寫範圍的整個分隔符號符合。

TryReadTo(ReadOnlySequence<T>, T, Boolean)

嘗試讀取所有項目,最多為指定的 delimiter

TryReadTo(ReadOnlySequence<T>, T, T, Boolean)

嘗試讀取所有項目,最多為指定的 delimiter,忽略前有 delimiterEscape 的分隔符號。

TryReadTo(ReadOnlySpan<T>, ReadOnlySpan<T>, Boolean)

嘗試讀取所有項目,最多為指定的 delimiter

TryReadTo(ReadOnlySpan<T>, T, Boolean)

嘗試讀取所有項目,最多為指定的 delimiter

TryReadTo(ReadOnlySpan<T>, T, T, Boolean)

嘗試讀取所有項目,最多為指定的 delimiter,忽略前有 delimiterEscape 的分隔符號。

TryReadToAny(ReadOnlySequence<T>, ReadOnlySpan<T>, Boolean)

嘗試讀取所有項目,最多為任何指定的 delimiters

TryReadToAny(ReadOnlySpan<T>, ReadOnlySpan<T>, Boolean)

嘗試讀取所有項目,最多為任何指定的 delimiters

適用於