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

Definizione

Decodifica l'oggetto Rune alla fine del buffer di origine UTF-16 fornito.

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

Parametri

source
ReadOnlySpan<Char>

Intervallo di caratteri con codifica UTF-16 di sola lettura.

result
Rune

Quando termina, la runa decodificata.

charsConsumed
Int32

Quando termina, il numero di byte letti per creare la runa.

Valori restituiti

Done se il buffer di origine inizia con un valore scalare con codifica UTF-16 valido. resultcontiene quindi l'oggetto decodificato Runee charsConsumed contiene il numero di valori utilizzati nel buffer di Char input per codificare .Rune

NeedMoreData se il buffer di origine è vuoto o contiene solo un carattere surrogato UTF-16 high autonomo. result ReplacementCharcontiene quindi e charsConsumed contiene la lunghezza del buffer di input.

InvalidData se il buffer di origine inizia con un valore scalare con codifica UTF-16 non valido. result ReplacementCharcontiene quindi e charsConsumed contiene il numero di Char valori usati per codificare la sequenza non formata. .

Commenti

Questo metodo è molto simile a DecodeFromUtf16(ReadOnlySpan<Char>, Rune, Int32), ad eccezione del fatto che consente al chiamante di eseguire un ciclo indietro anziché in avanti. La convenzione di chiamata tipica è che in ogni iterazione del ciclo il chiamante deve esezionare gli elementi finali charsConsumed del source buffer.

Si applica a