Rune.DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Dekóduje Rune na začátku poskytnuté zdrojové vyrovnávací paměti UTF-8.
public:
static System::Buffers::OperationStatus DecodeFromUtf8(ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] System::Text::Rune % result, [Runtime::InteropServices::Out] int % bytesConsumed);
public static System.Buffers.OperationStatus DecodeFromUtf8 (ReadOnlySpan<byte> source, out System.Text.Rune result, out int bytesConsumed);
static member DecodeFromUtf8 : ReadOnlySpan<byte> * Rune * int -> System.Buffers.OperationStatus
Public Shared Function DecodeFromUtf8 (source As ReadOnlySpan(Of Byte), ByRef result As Rune, ByRef bytesConsumed As Integer) As OperationStatus
Parametry
- source
- ReadOnlySpan<Byte>
Rozsah bajtu kódování UTF-8 jen pro čtení
- result
- Rune
Když tato metoda vrátí dekódovaný rune.
- 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ěť začíná platnou skalární hodnotou kódování UTF-8. result
pak obsahuje dekódované Runea bytesConsumed
obsahuje počet Byte 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-8 high náhradní znak. result
obsahuje ReplacementChara bytesConsumed
obsahuje délku vstupní vyrovnávací paměti.
InvalidData pokud zdrojová vyrovnávací paměť začíná špatně vytvořenou skalární hodnotou UTF-8. result
pak obsahuje a bytesConsumed
obsahuje ReplacementCharpočet Byte hodnot použitých ve vstupní vyrovnávací paměti pro kódování špatně vytvořené sekvence.
.
Poznámky
Obecnou konvencí je volat tuto metodu ve smyčce a řezem source
vyrovnávací paměti podle bytesConsumed
prvků pro každou iteraci smyčky. Při každé iteraci smyčky obsahuje skutečnou skalární hodnotu, result
pokud byla úspěšně dekódována, nebo obsahuje Rune.ReplacementChar , pokud se data nepodařilo úspěšně dekódovat. Tento model poskytuje pohodlné automatické nahrazení neplatných sekvencí U+FFFD při iteraci smyčky.