Rune.DecodeFromUtf16(ReadOnlySpan<Char>, Rune, Int32) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Descodifica o Rune no início do buffer de origem UTF-16 fornecido.
public:
static System::Buffers::OperationStatus DecodeFromUtf16(ReadOnlySpan<char> source, [Runtime::InteropServices::Out] System::Text::Rune % result, [Runtime::InteropServices::Out] int % charsConsumed);
public static System.Buffers.OperationStatus DecodeFromUtf16(ReadOnlySpan<char> source, out System.Text.Rune result, out int charsConsumed);
static member DecodeFromUtf16 : ReadOnlySpan<char> * Rune * int -> System.Buffers.OperationStatus
Public Shared Function DecodeFromUtf16 (source As ReadOnlySpan(Of Char), ByRef result As Rune, ByRef charsConsumed As Integer) As OperationStatus
Parâmetros
- source
- ReadOnlySpan<Char>
Uma extensão de caracteres UTF-16 apenas de leitura.
- result
- Rune
Quando este método regressa, a runa decodificada.
- charsConsumed
- Int32
Quando este método regressa, o número de caracteres lidos para criar a runa.
Devoluções
Done se o buffer de origem começar com um valor escalar válido codificado em UTF-16.
result então contém o decodificado Rune, e charsConsumed contém o número de Char 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-16 autónomo de alto nível.
result então contém ReplacementChar, e charsConsumed contém o comprimento do buffer de entrada.
InvalidData se o buffer de origem começar com um valor escalar codificado em UTF-16 mal formado.
result então contém ReplacementChar, e charsConsumed contém o número de Char valores usados para codificar a sequência mal formada.
.
Observações
A convenção geral é chamar este método num ciclo, cortando o source buffer por charsConsumed elementos em cada iteração do ciclo. Em cada iteração do ciclo, result contém o valor escalar real se os dados foram decodificados com sucesso, ou contém Rune.ReplacementChar se os dados não foram decodificados com sucesso. Este padrão permite a substituição automática conveniente de sequências inválidas por U+FFFD durante a iteração pelo ciclo.