Rune.DecodeLastFromUtf8(ReadOnlySpan<Byte>, Rune, Int32) Metoda

Definice

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

public:
 static System::Buffers::OperationStatus DecodeLastFromUtf8(ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] System::Text::Rune % value, [Runtime::InteropServices::Out] int % bytesConsumed);
public static System.Buffers.OperationStatus DecodeLastFromUtf8 (ReadOnlySpan<byte> source, out System.Text.Rune value, out int bytesConsumed);
static member DecodeLastFromUtf8 : ReadOnlySpan<byte> * Rune * int -> System.Buffers.OperationStatus
Public Shared Function DecodeLastFromUtf8 (source As ReadOnlySpan(Of Byte), ByRef value As Rune, ByRef bytesConsumed As Integer) As OperationStatus

Parametry

source
ReadOnlySpan<Byte>

Bajtový rozsah s kódováním UTF-8 jen pro čtení.

value
Rune

Když tato metoda vrátí, dekódované spuštění.

bytesConsumed
Int32

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

Návraty

Done pokud zdrojová vyrovnávací paměť končí platnou skalární hodnotou v kódování UTF-8. result pak obsahuje dekódovaný Runeobjekt a bytesConsumed obsahuje počet Byte hodnot použitých ve vstupní vyrovnávací paměti ke kódování Rune.

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

InvalidData pokud zdrojová vyrovnávací paměť končí špatně formátovanou skalární hodnotou kódování UTF-8. result pak obsahuje ReplacementChara bytesConsumed obsahuje počet Byte hodnot použitých ve vstupní vyrovnávací paměti ke kódování špatně vytvořené sekvence.

Poznámky

Tato metoda je velmi podobná DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32)metodě , s tím rozdílem, že umožňuje volajícímu smyčku zpět místo dopředu. Typická konvence volání je, že při každé iteraci smyčky by volající měl rozdělit poslední bytesConsumed prvky source vyrovnávací paměti.

Platí pro