ASCIIEncoding.GetMaxByteCount(Int32) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Calcola il numero massimo di byte prodotti dalla codifica del numero di caratteri specificato.
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
Parametri
- charCount
- Int32
Numero di caratteri da codificare.
Restituisce
Numero massimo di byte prodotti dalla codifica del numero di caratteri specificato.
Eccezioni
charCount
è minore di zero.
-oppure- Il numero di byte ottenuto è maggiore del numero massimo che può essere restituito come valore integer.
Esempio
Nell'esempio seguente viene illustrato come usare il GetMaxByteCount metodo per calcolare i byte necessari per codificare un numero specificato di caratteri.
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
Commenti
Il GetByteCount metodo calcola le dimensioni esatte della matrice richieste dal GetBytes metodo per archiviare i byte risultanti, mentre il GetMaxByteCount metodo calcola le dimensioni massime della matrice. Il GetByteCount metodo in genere alloca meno memoria, ma il GetMaxByteCount metodo esegue in genere più velocemente.
GetMaxByteCount è un numero di case peggiore, incluso il peggiore caso per l'oggetto attualmente selezionato EncoderFallback. Se si sceglie un fallback sostitutivo con una stringa potenzialmente di grandi dimensioni, GetMaxByteCount può restituire valori di grandi dimensioni.
Il GetMaxByteCount metodo considera i potenziali surrogati di sinistra da un'operazione di codifica precedente. Di conseguenza, se l'oggetto usa il ASCIIEncoding fallback di sostituzione predefinito o se è stato definito un fallback di sostituzione personalizzato con un singolo carattere di fallback, il metodo restituisce charCount
+ 1. Se l'oggetto ASCIIEncoding usa un fallback sostitutivo con più di un possibile carattere di fallback, il metodo restituisce n * (charCount
+ 1), dove n è il numero massimo di caratteri di fallback.
GetMaxByteCountnon ha alcuna relazione con GetChars . Se l'applicazione necessita di una funzione simile da usare con GetChars, deve usare GetMaxCharCount.
Nota
GetMaxByteCount(N)
non è necessariamente lo stesso valore di N* GetMaxByteCount(1)
.