Rune.DecodeLastFromUtf8(ReadOnlySpan<Byte>, Rune, Int32) Метод

Определение

Декодирует Rune в конце предоставленного исходного буфера UTF-8.

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

Параметры

source
ReadOnlySpan<Byte>

Диапазон байтов в кодировке UTF-8 только для чтения.

value
Rune

При возврате методом — расшифрованная руна.

bytesConsumed
Int32

Количество байтов, считанных для создания руны, при возврате управления методом.

Возвращаемое значение

OperationStatus

Значение Done, если исходный буфер кончается допустимым скалярным значением в кодировке UTF-8. result затем содержит декодированный Rune, и bytesConsumed содержит количество значений Byte, используемых во входном буфере для кодирования Rune.

Значение NeedMoreData, если исходный буфер пуст или содержит только автономный верхний суррогатный символ UTF-8. result затем содержит ReplacementChar, и bytesConsumed содержит длину входного буфера.

Значение InvalidData, если исходный буфер кончается неправильно сформированным скалярным значением в кодировке UTF-8. result затем содержит ReplacementChar, и bytesConsumed содержит количество значений Byte, используемых во входном буфере для кодирования неправильной последовательности.

Комментарии

Этот метод очень похож на DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32), за исключением того, что он позволяет вызывающему объекту выполнять цикл назад, а не пересылать вперед. Стандартное соглашение о вызовах заключается в том, что при каждой итерации цикла вызывающий объект должен срезать конечные bytesConsumed элементы буфера source .

Применяется к