Rune.DecodeLastFromUtf16(ReadOnlySpan<Char>, Rune, Int32) Metoda

Definice

Dekóduje Rune na konci poskytnuté zdrojové vyrovnávací paměti UTF-16.

public:
 static System::Buffers::OperationStatus DecodeLastFromUtf16(ReadOnlySpan<char> source, [Runtime::InteropServices::Out] System::Text::Rune % result, [Runtime::InteropServices::Out] int % charsConsumed);
public static System.Buffers.OperationStatus DecodeLastFromUtf16 (ReadOnlySpan<char> source, out System.Text.Rune result, out int charsConsumed);
static member DecodeLastFromUtf16 : ReadOnlySpan<char> * Rune * int -> System.Buffers.OperationStatus
Public Shared Function DecodeLastFromUtf16 (source As ReadOnlySpan(Of Char), ByRef result As Rune, ByRef charsConsumed As Integer) As OperationStatus

Parametry

source
ReadOnlySpan<Char>

Rozsah znaků kódování UTF-16 jen pro čtení.

result
Rune

Když tato metoda vrátí dekódovaný rune.

charsConsumed
Int32

Když tato metoda vrátí, počet bajtů přečtených k vytvoření rune.

Návraty

OperationStatus

Done pokud zdrojová vyrovnávací paměť začíná platnou skalární hodnotou kódování UTF-16. result pak obsahuje dekódované Runea charsConsumed obsahuje počet Char hodnot použitých ve vstupní vyrovnávací paměti pro kódování Rune.

NeedMoreData pokud je zdrojová vyrovnávací paměť prázdná nebo obsahuje pouze samostatný znak UTF-16 high náhradní znak. result obsahuje ReplacementChara charsConsumed obsahuje délku vstupní vyrovnávací paměti.

InvalidData pokud zdrojová vyrovnávací paměť začíná špatně vytvořenou skalární hodnotou UTF-16. resultpak obsahuje a charsConsumed obsahuje ReplacementCharpočet Char hodnot použitých k kódování špatně vytvořené sekvence. .

Poznámky

Tato metoda je velmi podobná DecodeFromUtf16(ReadOnlySpan<Char>, Rune, Int32), s výjimkou toho, že volající umožňuje smyčku zpět místo vpřed. Typická konvence volání spočívá v tom, že u každé iterace smyčky by volající měl rozdělit konečné charsConsumed prvky source vyrovnávací paměti.

Platí pro