ASCIIEncoding.GetMaxByteCount(Int32) Yöntem
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bu makalede
Belirtilen karakter sayısını kodlayarak üretilen en fazla bayt sayısını hesaplar.
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
- charCount
- Int32
Kodlanacak karakter sayısı.
Belirtilen karakter sayısını kodlayarak üretilen bayt sayısı üst sınırı.
charCount
, sıfırdan küçüktür.
-veya- Elde edilen bayt sayısı, tamsayı olarak döndürülebilecek maksimum sayıdan büyüktür.
Aşağıdaki örnek, belirtilen sayıda karakteri kodlamak için gereken baytları hesaplamak için yönteminin nasıl kullanılacağını GetMaxByteCount gösterir.
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
yöntemi, GetByteCount elde edilen baytları depolamak için yöntemin GetBytes gerektirdiği dizi boyutunu tam olarak hesaplarken GetMaxByteCount , yöntem en büyük dizi boyutunu hesaplar. GetByteCount yöntemi genellikle daha az bellek ayırır, ancak GetMaxByteCount yöntem genellikle daha hızlı yürütülür.
GetMaxByteCount , seçili EncoderFallbackdurumdaki için en kötü durum dahil olmak üzere en kötü durumlu bir sayıdır. Büyük olabilecek bir dizeye sahip yeni bir geri dönüş seçerseniz, GetMaxByteCount büyük değerler döndürebilir.
yöntemi, GetMaxByteCount önceki bir kodlama işleminden kalan olası yedekleri dikkate alır. Sonuç olarak, nesne varsayılan değiştirme geri dönüşünü kullanıyorsa veya tek bir olası geri dönüş karakteriyle özel bir değiştirme geri dönüşü tanımlanmışsa ASCIIEncoding , yöntem + 1 döndürür charCount
. ASCIIEncoding Nesne, birden fazla olası geri dönüş karakteriyle yedek bir geri dönüş kullanırsa, yöntem n * (charCount
+ 1) döndürür; burada n, en fazla geri dönüş karakteri sayısıdır.
GetMaxByteCount ile hiçbir ilişkisi GetCharsyoktur. Uygulamanızın ile GetCharskullanmak için benzer bir işleve ihtiyacı varsa, bunu kullanmalıdır GetMaxCharCount.
Not
GetMaxByteCount(N)
ile aynı değer N* GetMaxByteCount(1)
olmayabilir.
Ürün | Sürümler |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8 |
.NET Standard | 1.3, 1.4, 1.6, 2.0, 2.1 |
UWP | 10.0 |