Ler em inglês

Partilhar via


ASCIIEncoding.GetMaxByteCount(Int32) Método

Definição

Calcula o número máximo de bytes produzidos pela codificação do número de caracteres especificado.

C#
public override int GetMaxByteCount (int charCount);

Parâmetros

charCount
Int32

O número de caracteres a ser codificado.

Retornos

O número máximo de bytes produzidos pela codificação do número de caracteres especificado.

Exceções

charCount é menor que zero.

- ou -

O número de bytes resultante é maior que o número máximo que pode ser retornado como um inteiro.

Exemplos

O exemplo a seguir demonstra como usar o GetMaxByteCount método para calcular os bytes necessários para codificar um número especificado de caracteres.

C#
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
        );
    }
}

Comentários

O GetByteCount método calcula o tamanho exato da matriz exigido pelo GetBytes método para armazenar os bytes resultantes, enquanto o GetMaxByteCount método calcula o tamanho máximo da matriz. O GetByteCount método geralmente aloca menos memória, mas o GetMaxByteCount método geralmente é executado mais rapidamente.

GetMaxByteCount é um número de pior caso, incluindo o pior caso para o selecionado EncoderFallbackno momento. Se você escolher um fallback de substituição com uma cadeia de caracteres potencialmente grande, GetMaxByteCount poderá retornar valores grandes.

O GetMaxByteCount método considera possíveis substitutos restantes de uma operação de codificação anterior. Como resultado, se o ASCIIEncoding objeto usar o fallback de substituição padrão ou se um fallback de substituição personalizado tiver sido definido com um único caractere de fallback possível, o método retornará charCount + 1. Se o ASCIIEncoding objeto usar um fallback de substituição com mais de um caractere de fallback possível, o método retornará n * (charCount + 1), em que n é o número máximo de caracteres de fallback.

GetMaxByteCountNão tem relação com GetChars . Se o aplicativo precisar de uma função semelhante para usar com GetChars, ele deverá usar GetMaxCharCount.

Nota

GetMaxByteCount(N)Não é necessariamente o mesmo valor que N* GetMaxByteCount(1) .

Aplica-se a

Produto Versões
.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, 8, 9
.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, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Confira também