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
, если метод не должен возвращать NeedMoreData; в противном случае значение false
.
Возвращаемое значение
Значение, представляющее состояние преобразования.
Комментарии
Этот метод соответствует методу UTF8Encoding.GetChars , за исключением того, что он имеет другое соглашение о вызовах, различные механизмы обработки ошибок и различные характеристики производительности.
Если "replaceInvalidSequences" имеет значение true
, метод заменяет все неправильно сформированные вложенные последовательности в source
на U+FFFD в и destination
продолжает обработку оставшейся части буфера. В противном случае метод возвращает , OperationStatus.InvalidData если обнаруживает какие-либо неправильно сформированные последовательности.
Если метод возвращает код ошибки, параметры out указывают, какая часть данных была успешно перекодирована, и расположение неправильно сформированной подсчетной последовательности можно вывести из этих значений.
Если "replaceInvalidSequences" имеет значение true
, метод никогда не возвращает OperationStatus.InvalidData. Если isFinalBlock имеет значение true
, метод никогда не возвращает OperationStatus.NeedMoreData.
Применяется к
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по