Utf8.ToUtf16 Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует диапазон байтов в кодировке UTF-8, доступный только для чтения, в диапазон символов в кодировке UTF-16.
public static System.Buffers.OperationStatus ToUtf16(ReadOnlySpan<byte> source, Span<char> destination, out int bytesRead, out int charsWritten, bool replaceInvalidSequences = true, bool isFinalBlock = true);
static member ToUtf16 : ReadOnlySpan<byte> * Span<char> * int * int * bool * bool -> System.Buffers.OperationStatus
Public Shared Function ToUtf16 (source As ReadOnlySpan(Of Byte), destination As Span(Of Char), ByRef bytesRead As Integer, ByRef charsWritten As Integer, Optional replaceInvalidSequences As Boolean = true, Optional isFinalBlock As Boolean = true) As OperationStatus
Параметры
- source
- ReadOnlySpan<Byte>
Диапазон байтов только для чтения в кодировке UTF-8.
- bytesRead
- Int32
При возврате метода число байтов, считываемых из source.
- charsWritten
- Int32
При возврате метода число символов, записанных destinationв .
- replaceInvalidSequences
- Boolean
true Значение , чтобы заменить недопустимые последовательности UTF-8 в source U+FFFD; false чтобы вернуться InvalidData , если недопустимые символы найдены в source.
- isFinalBlock
- Boolean
trueЗначение , falseесли метод не должен возвращатьNeedMoreData; в противном случае .
Возвращаемое значение
Значение, указывающее состояние преобразования.
Комментарии
Этот метод соответствует методу UTF8Encoding.GetChars , за исключением того, что он имеет другое соглашение о вызове, различные механизмы обработки ошибок и различные характеристики производительности.
Если параметр "replaceInvalidSequences" имеет trueзначение, метод заменяет все недоформированные вложенные значения в source U+FFFD destination и продолжает обрабатывать оставшуюся часть буфера. В противном случае метод возвращается OperationStatus.InvalidData , если он встречает какие-либо неправильно сформированные последовательности.
Если метод возвращает код ошибки, параметры out указывают, сколько данных было успешно перекодировано, а расположение неправильно сформированного подсчета может быть выведено из этих значений.
Если параметр "replaceInvalidSequences" имеет значение true, метод никогда не возвращается OperationStatus.InvalidData. Если параметр isFinalBlock имеет значение true, метод никогда не возвращается OperationStatus.NeedMoreData.