ASCIIEncoding.GetMaxByteCount(Int32) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Calcule le nombre maximal d'octets produits par l'encodage du nombre de caractères spécifié.
public:
override int GetMaxByteCount(int charCount);
public override int GetMaxByteCount (int charCount);
override this.GetMaxByteCount : int -> int
Public Overrides Function GetMaxByteCount (charCount As Integer) As Integer
Paramètres
- charCount
- Int32
Nombre de caractères à encoder.
Retours
Nombre maximal d'octets produits par l'encodage du nombre de caractères spécifié.
Exceptions
charCount
est inférieur à zéro.
- ou - Le nombre d’octets résultant est supérieur au nombre maximal accepté pour un entier.
Exemples
L’exemple suivant montre comment utiliser la GetMaxByteCount méthode pour calculer les octets requis pour encoder un nombre spécifié de caractères.
using namespace System;
using namespace System::Text;
int main()
{
ASCIIEncoding^ ascii = gcnew ASCIIEncoding;
int charCount = 2;
int maxByteCount = ascii->GetMaxByteCount( charCount );
Console::WriteLine( "Maximum of {0} bytes needed to encode {1} characters.", maxByteCount, charCount );
}
using System;
using System.Text;
class ASCIIEncodingExample {
public static void Main() {
ASCIIEncoding ascii = new ASCIIEncoding();
int charCount = 2;
int maxByteCount = ascii.GetMaxByteCount(charCount);
Console.WriteLine(
"Maximum of {0} bytes needed to encode {1} characters.",
maxByteCount,
charCount
);
}
}
Imports System.Text
Class ASCIIEncodingExample
Public Shared Sub Main()
Dim ascii As New ASCIIEncoding()
Dim charCount As Integer = 2
Dim maxByteCount As Integer = ascii.GetMaxByteCount(charCount)
Console.WriteLine( _
"Maximum of {0} bytes needed to encode {1} characters.", _
maxByteCount, _
charCount _
)
End Sub
End Class
Remarques
La GetByteCount méthode calcule la taille exacte du tableau requise par la GetBytes méthode pour stocker les octets résultants, tandis que la GetMaxByteCount méthode calcule la taille maximale du tableau. La GetByteCount méthode alloue généralement moins de mémoire, mais la GetMaxByteCount méthode s’exécute généralement plus rapidement.
GetMaxByteCount est un numéro de pire cas, y compris le pire cas pour le actuellement sélectionné EncoderFallback. Si vous choisissez une solution de secours de remplacement avec une chaîne potentiellement volumineuse, GetMaxByteCount vous pouvez retourner de grandes valeurs.
La GetMaxByteCount méthode prend en compte les substituts de substitution restants potentiels d’une opération d’encodage précédente. Par conséquent, si l’objet ASCIIEncoding utilise le secours de remplacement par défaut, ou si un secours de remplacement personnalisé a été défini avec un seul caractère de secours possible, la méthode retourne charCount
+ 1. Si l’objet ASCIIEncoding utilise un secours de remplacement avec plusieurs caractères de secours possibles, la méthode retourne n * (charCount
+ 1), où n est le nombre maximal de caractères de secours.
GetMaxByteCountn’a aucune relation avec GetChars . Si votre application a besoin d’une fonction similaire à utiliser avec GetChars, elle doit utiliser GetMaxCharCount.
Notes
GetMaxByteCount(N)
n’est pas nécessairement la même valeur que N* GetMaxByteCount(1)
.