Base64.DecodeFromUtf8 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í.
Descodifica el intervalo de texto codificado UTF-8 representado como base 64 en datos binarios. Si la entrada no es un múltiplo de 4, descodificará tanto como sea posible, al múltiplo más cercano de 4.
public static System.Buffers.OperationStatus DecodeFromUtf8 (ReadOnlySpan<byte> utf8, Span<byte> bytes, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true);
static member DecodeFromUtf8 : ReadOnlySpan<byte> * Span<byte> * int * int * bool -> System.Buffers.OperationStatus
Public Shared Function DecodeFromUtf8 (utf8 As ReadOnlySpan(Of Byte), bytes As Span(Of Byte), ByRef bytesConsumed As Integer, ByRef bytesWritten As Integer, Optional isFinalBlock As Boolean = true) As OperationStatus
Parámetros
- utf8
- ReadOnlySpan<Byte>
El intervalo de entrada que contiene texto codificado UTF-8 en base 64 que tiene que descodificar.
El intervalo de salida que contiene el resultado de la operación, es decir, los datos binarios descodificados.
- bytesConsumed
- Int32
Cuando este método devuelve , contiene el número de bytes de entrada consumidos durante la operación. Esto puede usarse para segmentar la entrada en llamadas posteriores, si es necesario.
- bytesWritten
- Int32
Cuando este método vuelve, contiene el número de bytes escritos en el intervalo de salida. Esto puede usarse para segmentar la salida en llamadas posteriores, si es necesario.
- isFinalBlock
- Boolean
true
(valor predeterminado) para indicar que el intervalo de entrada contiene todos los datos que se van a descodificar. false
para indicar que el intervalo de entrada contiene datos parciales con más datos que se deben seguir.
Devoluciones
Uno de los valores de enumeración que indica el estado de la operación de descodificación.
Comentarios
El valor devuelto puede ser el siguiente:
- OperationStatus.Done: el procesamiento de todo el intervalo de entrada se realizó correctamente.
- OperationStatus.DestinationTooSmall: no hay suficiente espacio en el intervalo de salida para escribir la entrada descodificada.
- OperationStatus.NeedMoreData:
isFinalBlock
esfalse
y la entrada no es un múltiplo de 4. De lo contrario, la entrada parcial se considera InvalidData. - OperationStatus.InvalidData: la entrada contiene bytes fuera del intervalo base 64 esperado o está incompleto (es decir, no un múltiplo de 4) y
isFinalBlock
estrue
. En .NET 7 y versiones anteriores, este valor también puede indicar que la entrada tiene caracteres de relleno no válidos o más de dos.