Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

Decoder.Convert, méthode (Byte*, Int32, Char*, Int32, Boolean, Int32, Int32, Boolean)

Convertit une mémoire tampon d'octets encodés en caractères encodés UTF-16 et stocke le résultat dans une autre mémoire tampon.

Cette API n'est pas conforme CLS. L'alternative conforme CLS est Convert.

Espace de noms :  System.Text
Assembly :  mscorlib (dans mscorlib.dll)

[CLSCompliantAttribute(false)]
[ComVisibleAttribute(false)]
public virtual void Convert(
	byte* bytes,
	int byteCount,
	char* chars,
	int charCount,
	bool flush,
	out int bytesUsed,
	out int charsUsed,
	out bool completed
)

Paramètres

bytes
Type : System.Byte*
Adresse d'une mémoire tampon contenant les séquences d'octets à convertir.
byteCount
Type : System.Int32
Nombre d'octets de bytes à convertir.
chars
Type : System.Char*
Adresse d'une mémoire tampon pour stocker les caractères convertis.
charCount
Type : System.Int32
Nombre maximal de caractères dans chars à utiliser dans la conversion.
flush
Type : System.Boolean
true pour indiquer qu'aucune autre donnée ne doit être convertie ; sinon, false.
bytesUsed
Type : System.Int32
Lorsque cette méthode est retournée, contient le nombre d'octets produits par la conversion. Ce paramètre est passé sans être initialisé.
charsUsed
Type : System.Int32
Lorsque cette méthode est retournée, contient le nombre de caractères de chars utilisés dans la conversion. Ce paramètre est passé sans être initialisé.
completed
Type : System.Boolean
Lorsque cette méthode est retournée, contient true si tous les caractères spécifiés par byteCount ont été convertis ; sinon, false. Ce paramètre est passé sans être initialisé.

ExceptionCondition
ArgumentNullException

chars ou bytes est null (Nothing).

ArgumentOutOfRangeException

charCount ou byteCount est inférieur à zéro.

ArgumentException

La mémoire tampon de sortie est trop petite pour contenir le moindre élément de l'entrée convertie. La mémoire tampon de sortie doit être supérieure ou égale à la taille indiquée par la méthode GetCharCount.

DecoderFallbackException

Un secours s'est produit (consultez Encodage de caractères dans le .NET Framework pour obtenir une explication plus complète)

– et –

Fallback a la valeur DecoderExceptionFallback.

Souvenez-vous que l'objet Decoder enregistre l'état entre les appels à Convert. Lorsque l'application est faite avec un flux de données, elle doit affecter au paramètre flush la valeur true pour s'assurer que les informations d'état sont vidées. Avec ce paramètre, le décodeur ignore les octets non valides à la fin du bloc de données et efface la mémoire tampon interne. Les données traitées restantes qui font partie d'une unité logique, comme le substitut étendu d'une paire de substitution, sont converties d'après les paramètres de secours actifs.

La méthode Convert est conçue pour être utilisée dans une boucle afin de décoder une quantité arbitraire d'entrées, comme les données lues depuis un fichier ou un flux. Il stocke la sortie de l'opération de décodage dans un tampon de taille fixe. GetChars lèvera une exception si la mémoire tampon de sortie n'est pas assez grande, mais Convert remplira autant d'espace que possible et retournera les octets lus et les caractères écrits. Consultez également la rubrique Encoding.GetChars pour plus de commentaires.

Le paramètre de sortie completed indique si toutes les données de la mémoire tampon d'entrée ont été converties et stockées dans la mémoire tampon de sortie. Ce paramètre a la valeur false si le nombre d'octets spécifié par le paramètre byteCount ne peut pas être converti sans dépasser le nombre de caractères spécifié par le paramètre charCount. Dans cette situation, l'application doit utiliser le contenu de la mémoire tampon de sortie ou fournir une nouvelle mémoire tampon de sortie, incrémenter le paramètre bytes du nombre d'octets spécifié par le paramètre bytesUsed, puis appeler encore la méthode Convert pour traiter l'entrée restante.

Le paramètre completed peut également avoir la valeur false, bien que les bytesUsed et byteCount paramètres soient égaux. Cette situation se produit s'il existe encore des données dans l'objet Decoder qui n'ont pas été stockées dans la mémoire tampon bytes.

.NET Framework

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Bibliothèque de classes portable

Pris en charge dans : Bibliothèque de classes portable

.NET pour les applications Windows Phone

Pris en charge dans : Windows Phone 8, Silverlight 8.1

  • SecurityCriticalAttribute 

    exige une confiance totale pour l'appelant immédiat. Ce membre ne peut pas être utilisé par du code partiellement de confiance ou transparent.

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft