Partager via


Base64.DecodeFromUtf8 Méthode

Définition

Décode l’étendue du texte codé en UTF-8 représenté en tant que base 64 dans les données binaires. Si l’entrée n’est pas un multiple de 4, il décodera autant que possible, au multiple de 4 le plus proche.

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

Paramètres

utf8
ReadOnlySpan<Byte>

L’étendue d’entrée qui contient du texte codé UTF-8 en base 64 qui doit être décodé.

bytes
Span<Byte>

L’étendue de sortie qui contient le résultat de l’opération, autrement dit, les données binaires décodées.

bytesConsumed
Int32

Lorsque cette méthode est retournée, contient le nombre d’octets d’entrée consommés pendant l’opération. Cela peut servir à découper l’entrée pour les appels suivants, si nécessaire.

bytesWritten
Int32

Lorsque cette méthode est retournée, contient le nombre d’octets écrits dans l’étendue de sortie. Cela peut servir à découper la sortie pour les appels suivants, si nécessaire.

isFinalBlock
Boolean

true (valeur par défaut) pour indiquer que l’étendue d’entrée contient l’intégralité des données à décoder. false pour indiquer que l’étendue d’entrée contient des données partielles avec d’autres données à suivre.

Retours

L'une des valeurs d’énumération qui indique l’état de l’opération de décodage.

Remarques

La valeur de retour peut être la suivante :

  • OperationStatus.Done: Le traitement de l’ensemble de l’étendue d’entrée a réussi.
  • OperationStatus.DestinationTooSmall: l’espace dans l’étendue de sortie est insuffisant pour écrire l’entrée décodée.
  • OperationStatus.NeedMoreData: isFinalBlock est false et l’entrée n’est pas un multiple de 4. Sinon, l’entrée partielle est considérée comme InvalidData.
  • OperationStatus.InvalidData: l’entrée contient des octets en dehors de la plage de base 64 attendue, ou est incomplète (autrement dit, pas un multiple de 4) et isFinalBlock a la valeur true. Dans .NET 7 et les versions antérieures, cette valeur peut également indiquer que l’entrée a des caractères de remplissage non valides ou plus de deux.

S’applique à