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

Definition

Avkodar Rune i slutet av den angivna UTF-8-källbufferten.

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

Parametrar

source
ReadOnlySpan<Byte>

Ett skrivskyddat UTF-8-kodat byteintervall.

value
Rune

När den här metoden returneras avkodad runa.

bytesConsumed
Int32

När den här metoden returnerar, antalet byte som lästs för att skapa körningen.

Returer

Done om källbufferten slutar med ett giltigt UTF-8-kodat skalärvärde. value innehåller sedan det avkodade Runeoch bytesConsumed innehåller antalet Byte värden som används i indatabufferten Runeför att koda .

NeedMoreData om källbufferten är tom eller endast innehåller ett fristående UTF-8-tecken med hög surrogatfärg. value innehåller ReplacementCharsedan , och bytesConsumed innehåller längden på indatabufferten.

InvalidData om källbufferten slutar med ett felaktigt utf-8-kodat skalärvärde. value innehåller ReplacementCharsedan och bytesConsumed innehåller antalet Byte värden som används i indatabufferten för att koda den illa utformade sekvensen.

Kommentarer

Den här metoden liknar mycket , förutom att DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32)den tillåter anroparen att loopa bakåt i stället för framåt. Den typiska anropskonventionen är att anroparen på varje iteration av loopen ska dela upp buffertens source sista bytesConsumed element.

Gäller för