Idioma

Rune.DecodeLastFromUtf8(ReadOnlySpan<Byte>, Rune, Int32) Método

Definição

Descodifica o Rune no final do buffer de origem UTF-8 fornecido.

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

Parâmetros

source
ReadOnlySpan<Byte>

Um span de bytes codificado em UTF-8 de apenas leitura.

value
Rune

Quando este método regressa, a runa decodificada.

bytesConsumed
Int32

Quando este método retorna, o número de bytes lidos para criar a runa.

Devoluções

Done se o buffer de origem terminar com um valor escalar codificado em UTF-8 válido. value então contém o decodificado Rune, e bytesConsumed contém o número de Byte valores usados no buffer de entrada para codificar o Rune.

NeedMoreData se o buffer de origem estiver vazio ou contiver apenas um caractere substituto UTF-8 alto independente. value então contém ReplacementChar, e bytesConsumed contém o comprimento do buffer de entrada.

InvalidData se o buffer de origem terminar com um valor escalar codificado em UTF-8 mal formado. value então contém ReplacementChar, e bytesConsumed contém o número de Byte valores usados no buffer de entrada para codificar a sequência mal formada.

Observações

Este método é muito semelhante a DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32), exceto que permite ao chamador recuar em loop em vez de avançar. A convenção típica de chamada é que, em cada iteração do ciclo, o chamador deve cortar os elementos finais bytesConsumed do source buffer.

Aplica-se a