Rune.DecodeLastFromUtf16(ReadOnlySpan<Char>, Rune, Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Декодирует Rune в конце предоставленного исходного буфера UTF-16.
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
Параметры
- source
- ReadOnlySpan<Char>
Диапазон символов в кодировке UTF-16 только для чтения.
- result
- Rune
Когда этот метод возвращается, декодированные руна.
- charsConsumed
- Int32
При возврате этого метода число байтов, считываемых для создания руна.
Возвращаемое значение
Done Если исходный буфер начинается с допустимого скалярного значения UTF-16.
result затем содержит декодированный Runeи charsConsumed содержит количество значений, используемых Char в входном буфере для кодирования Rune.
NeedMoreData Значение , если исходный буфер пуст или содержит только автономный символ UTF-16 с высоким суррогатным символом.
result затем содержит ReplacementCharи charsConsumed содержит длину входного буфера.
InvalidData Если исходный буфер начинается с неправильно сформированного скалярного значения UTF-16.
result затем содержит ReplacementCharи charsConsumed содержит количество значений, используемых Char для кодирования неправильно сформированной последовательности.
.
Комментарии
Этот метод очень похож DecodeFromUtf16(ReadOnlySpan<Char>, Rune, Int32)на , за исключением того, что вызывающий объект может циклировать назад, а не вперед. Обычное соглашение о вызове заключается в том, что при каждой итерации цикла вызывающий объект должен срезать конечные charsConsumed элементы буфера source .