ASCIIEncoding.GetMaxByteCount(Int32) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Berechnet die maximale Anzahl von Byte, die durch die Codierung der angegebenen Anzahl von Zeichen erzeugt werden.
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
Parameter
- charCount
- Int32
Die Anzahl der zu codierenden Zeichen.
Gibt zurück
Die maximale Anzahl von Byte, die durch die Codierung der angegebenen Anzahl von Zeichen erzeugt werden.
Ausnahmen
charCount ist kleiner als 0 (null).
-oder-
Die resultierende Anzahl von Bytes ist größer als die maximale Zahl, die als ganze Zahl zurückgegeben werden kann.
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie die GetMaxByteCount Methode verwendet wird, um die zum Codieren einer angegebenen Anzahl von Zeichen erforderlichen Bytes zu berechnen.
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
Hinweise
Die GetByteCount Methode berechnet die genaue Arraygröße, die von der GetBytes Methode zum Speichern der resultierenden Bytes benötigt wird, während die GetMaxByteCount Methode die maximale Arraygröße berechnet. Die GetByteCount Methode weist in der Regel weniger Arbeitsspeicher zu, aber die Methode wird in der GetMaxByteCount Regel schneller ausgeführt.
GetMaxByteCount ist eine Worst-Case-Zahl, einschließlich des schlimmsten Falls für die aktuell ausgewählte EncoderFallback. Wenn Sie einen Ersatzfallback mit einer potenziell großen Zeichenfolge auswählen, GetMaxByteCount können große Werte zurückgegeben werden.
Die GetMaxByteCount Methode betrachtet potenzielle Übergänger aus einem vorherigen Codierungsvorgang. Wenn das ASCIIEncoding Objekt daher den Standardersetzungs-Fallback verwendet oder ein benutzerdefiniertes Ersatzfallback mit einem einzelnen möglichen Fallbackzeichen definiert wurde, gibt die Methode +1 zurück charCount . Wenn das ASCIIEncoding Objekt einen Ersatzfallback mit mehr als einem möglichen Fallbackzeichen verwendet, gibt die Methode n * (charCount + 1) zurück, wobei n die maximale Anzahl von Fallbackzeichen ist.
GetMaxByteCount hat keine Beziehung zu GetChars. Wenn Ihre Anwendung eine ähnliche Funktion benötigt, mit GetCharsder sie verwendet werden soll, sollte sie verwendet werden GetMaxCharCount.
Note
GetMaxByteCount(N) ist nicht unbedingt derselbe Wert wie N* GetMaxByteCount(1).