Utf8.FromUtf16 Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Convierte un intervalo de caracteres UTF-16 en un intervalo de bytes codificados UTF-8.
public static System.Buffers.OperationStatus FromUtf16 (ReadOnlySpan<char> source, Span<byte> destination, out int charsRead, out int bytesWritten, bool replaceInvalidSequences = true, bool isFinalBlock = true);
static member FromUtf16 : ReadOnlySpan<char> * Span<byte> * int * int * bool * bool -> System.Buffers.OperationStatus
Public Shared Function FromUtf16 (source As ReadOnlySpan(Of Char), destination As Span(Of Byte), ByRef charsRead As Integer, ByRef bytesWritten As Integer, Optional replaceInvalidSequences As Boolean = true, Optional isFinalBlock As Boolean = true) As OperationStatus
Parámetros
- source
- ReadOnlySpan<Char>
Intervalo de caracteres de solo lectura codificados UTF-16.
- charsRead
- Int32
Cuando lo devuelve el método, indica el número de caracteres leídos en source.
- bytesWritten
- Int32
Cuando el método finaliza, indica el número de caracteres escritos en destination.
- replaceInvalidSequences
- Boolean
true para reemplazar secuencias de UTF-16 no válidas en source con U+FFFD; false para devolver InvalidData si se encuentran caracteres no válidos en source.
- isFinalBlock
- Boolean
true si el método no debe devolver NeedMoreData; en caso contrario, false.
Devoluciones
Valor que indica el estado de la conversión.
Comentarios
Este método corresponde al método UTF8Encoding.GetBytes , salvo que tiene una convención de llamada diferente, distintos mecanismos de control de errores y diferentes características de rendimiento.
Si 'replaceInvalidSequences' es true, el método reemplaza las subsecuencias con formato incorrecto en por source U+FFFD en destination y continúa procesando el resto del búfer. De lo contrario, el método devuelve OperationStatus.InvalidData si encuentra secuencias con un formato incorrecto.
Si el método devuelve un código de error, los parámetros out indican la cantidad de datos que se transcodificaron correctamente y la ubicación de la subsecuencia con formato incorrecto se puede deducir de estos valores.
Si 'replaceInvalidSequences' es true, el método nunca devuelve OperationStatus.InvalidData. Si 'isFinalBlock' es true, el método nunca devuelve OperationStatus.NeedMoreData.