ASCIIEncoding.GetMaxByteCount(Int32) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Calcula o número máximo de bytes produzidos codificando o número especificado de caracteres.
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
Parâmetros
- charCount
- Int32
O número de caracteres a codificar.
Devoluções
O número máximo de bytes produzidos ao codificar o número especificado de caracteres.
Exceções
charCount é inferior a zero.
-ou-
O número resultante de bytes é maior do que o número máximo que pode ser devolvido como inteiro.
Exemplos
O exemplo seguinte demonstra como usar o GetMaxByteCount método para calcular os bytes necessários para codificar um número especificado de caracteres.
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
Observações
O GetByteCount método calcula o tamanho exato do array exigido pelo GetBytes método para armazenar os bytes resultantes, enquanto o GetMaxByteCount método calcula o tamanho máximo do array. O GetByteCount método geralmente aloca menos memória, mas GetMaxByteCount geralmente executa mais rapidamente.
GetMaxByteCount é um número do pior caso, incluindo o pior caso para o atualmente selecionado EncoderFallback. Se escolheres um substituto com uma cadeia potencialmente grande, podes GetMaxByteCount devolver valores grandes.
O GetMaxByteCount método considera potenciais substitutos remanescentes de uma operação de codificação anterior. Como resultado, se o ASCIIEncoding objeto usar o recurso de substituição por defeito, ou se um recurso de substituição personalizado tiver sido definido com um único caractere de recurso, o método retorna charCount + 1. Se o ASCIIEncoding objeto usar um recurso de substituição com mais do que um possível carácter de recurso, o método devolve n * (charCount + 1), onde n é o número máximo de caracteres de recurso.
GetMaxByteCount não tem relação com GetChars. Se a sua aplicação precisar de uma função semelhante para usar , GetCharsdeverá usar GetMaxCharCount.
Note
GetMaxByteCount(N) não é necessariamente o mesmo valor que N* GetMaxByteCount(1).