UTF8Encoding.GetCharCount UTF8Encoding.GetCharCount UTF8Encoding.GetCharCount UTF8Encoding.GetCharCount Method

Definición

Calcula el número de caracteres generado mediante la descodificación de una secuencia de bytes.Calculates the number of characters produced by decoding a sequence of bytes.

Sobrecargas

GetCharCount(Byte*, Int32) GetCharCount(Byte*, Int32) GetCharCount(Byte*, Int32)

Calcula el número de caracteres generado mediante la descodificación de una secuencia de bytes a partir del puntero de bytes especificado.Calculates the number of characters produced by decoding a sequence of bytes starting at the specified byte pointer.

GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32)

Calcula el número de caracteres generado mediante la descodificación de una secuencia de bytes a partir de la matriz de bytes especificada.Calculates the number of characters produced by decoding a sequence of bytes from the specified byte array.

GetCharCount(Byte*, Int32) GetCharCount(Byte*, Int32) GetCharCount(Byte*, Int32)

Importante

Esta API no es conforme a CLS.

Calcula el número de caracteres generado mediante la descodificación de una secuencia de bytes a partir del puntero de bytes especificado.Calculates the number of characters produced by decoding a sequence of bytes starting at the specified byte pointer.

public:
 override int GetCharCount(System::Byte* bytes, int count);
[System.CLSCompliant(false)]
[System.Runtime.InteropServices.ComVisible(false)]
[System.Security.SecurityCritical]
public override int GetCharCount (byte* bytes, int count);
override this.GetCharCount : nativeptr<byte> * int -> int

Parámetros

bytes
Byte*

Puntero al primer byte que se va a descodificar.A pointer to the first byte to decode.

count
Int32 Int32 Int32 Int32

Número de bytes que se van a descodificar.The number of bytes to decode.

Devoluciones

Número de caracteres que se generan al descodificar la secuencia especificada de bytes.The number of characters produced by decoding the specified sequence of bytes.

Excepciones

count es menor que cero.count is less than zero.

O bien-or- El número de bytes resultante es mayor que el número máximo que se puede devolver como entero.The resulting number of bytes is greater than the maximum number that can be returned as an integer.

Está habilitada la detección de errores, y bytes contiene una secuencia de bytes no válida.Error detection is enabled, and bytes contains an invalid sequence of bytes.

Se ha producido una acción de reserva (vea Codificación de caracteres en .NET Framework para obtener una explicación completa).A fallback occurred (see Character Encoding in the .NET Framework for complete explanation) - y --and- El valor de DecoderFallback está establecido en DecoderExceptionFallback.DecoderFallback is set to DecoderExceptionFallback.

Comentarios

Para calcular el tamaño exacto de matriz requerido GetChars para almacenar los caracteres resultantes, llame a la GetCharCount método.To calculate the exact array size required by GetChars to store the resulting characters, call the GetCharCount method. Para calcular el tamaño máximo de la matriz, llame a la GetMaxCharCount método.To calculate the maximum array size, call the GetMaxCharCount method. El GetCharCount método asigna generalmente menos memoria, mientras que el GetMaxCharCount método generalmente se ejecuta con mayor rapidez.The GetCharCount method generally allocates less memory, while the GetMaxCharCount method generally executes faster.

Con la detección de errores, una secuencia no válida hace que este método producir una ArgumentException excepción.With error detection, an invalid sequence causes this method to throw an ArgumentException exception. Sin detección de errores, se omiten las secuencias no válidas y se produce ninguna excepción.Without error detection, invalid sequences are ignored, and no exception is thrown.

Seguridad

SecurityCriticalAttribute
requiere plena confianza para el llamador inmediato.Requires full trust for the immediate caller. Este miembro no se puede usar código de confianza parcial o transparente.This member cannot be used by partially trusted or transparent code.

Consulte también:

GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32) GetCharCount(Byte[], Int32, Int32)

Calcula el número de caracteres generado mediante la descodificación de una secuencia de bytes a partir de la matriz de bytes especificada.Calculates the number of characters produced by decoding a sequence of bytes from the specified byte array.

public:
 override int GetCharCount(cli::array <System::Byte> ^ bytes, int index, int count);
public override int GetCharCount (byte[] bytes, int index, int count);
override this.GetCharCount : byte[] * int * int -> int
Public Overrides Function GetCharCount (bytes As Byte(), index As Integer, count As Integer) As Integer

Parámetros

bytes
Byte[]

Matriz de bytes que contiene la secuencia de bytes que se va a descodificar.The byte array containing the sequence of bytes to decode.

index
Int32 Int32 Int32 Int32

Índice del primer byte que se va a descodificar.The index of the first byte to decode.

count
Int32 Int32 Int32 Int32

Número de bytes que se van a descodificar.The number of bytes to decode.

Devoluciones

Número de caracteres que se generan al descodificar la secuencia especificada de bytes.The number of characters produced by decoding the specified sequence of bytes.

Excepciones

index o count es menor que cero.index or count is less than zero.

O bien-or- index y count no denotan un intervalo válido en bytes.index and count do not denote a valid range in bytes.

O bien-or- El número de bytes resultante es mayor que el número máximo que se puede devolver como entero.The resulting number of bytes is greater than the maximum number that can be returned as an integer.

Está habilitada la detección de errores, y bytes contiene una secuencia de bytes no válida.Error detection is enabled, and bytes contains an invalid sequence of bytes.

Se ha producido una acción de reserva (vea Codificación de caracteres en .NET Framework para obtener una explicación completa).A fallback occurred (see Character Encoding in the .NET Framework for complete explanation) - y --and- El valor de DecoderFallback está establecido en DecoderExceptionFallback.DecoderFallback is set to DecoderExceptionFallback.

Ejemplos

En el ejemplo siguiente se usa el GetCharCount método para devolver el número de caracteres que se genera al descodificar un intervalo de elementos de una matriz de bytes.The following example uses the GetCharCount method to return the number of characters produced by decoding a range of elements in a byte array.

using namespace System;
using namespace System::Text;
int main()
{
   array<Byte>^bytes = {85,84,70,56,32,69,110,99,111,100,105,110,103,32,69,120,97,109,112,108,101};
   UTF8Encoding^ utf8 = gcnew UTF8Encoding;
   int charCount = utf8->GetCharCount( bytes, 2, 8 );
   Console::WriteLine( "{0} characters needed to decode bytes.", charCount );
}

using System;
using System.Text;

class UTF8EncodingExample {
    public static void Main() {
        Byte[] bytes = new Byte[] {
             85,  84,  70,  56,  32,  69, 110,
             99, 111, 100, 105, 110, 103,  32,
             69, 120,  97, 109, 112, 108, 101
        };

        UTF8Encoding utf8 = new UTF8Encoding();
        int charCount = utf8.GetCharCount(bytes, 2, 8);
        Console.WriteLine(
            "{0} characters needed to decode bytes.", charCount
        );
    }
}
Imports System
Imports System.Text

Class UTF8EncodingExample
    
    Public Shared Sub Main()
        Dim bytes() As Byte = { _
            85,  84,  70,  56,  32,  69, 110, _
            99, 111, 100, 105, 110, 103,  32, _
            69, 120,  97, 109, 112, 108, 101 _
        }
        
        Dim utf8 As New UTF8Encoding()
        Dim charCount As Integer = utf8.GetCharCount(bytes, 2, 8)
        Console.WriteLine("{0} characters needed to decode bytes.", charCount)
    End Sub 'Main
End Class 'UTF8EncodingExample

Comentarios

Para calcular el tamaño exacto de matriz requerido GetChars para almacenar los caracteres resultantes, llame a la GetCharCount método.To calculate the exact array size required by GetChars to store the resulting characters, call the GetCharCount method. Para calcular el tamaño máximo de la matriz, llame a la GetMaxCharCount método.To calculate the maximum array size, call the GetMaxCharCount method. El GetCharCount método asigna generalmente menos memoria, mientras que el GetMaxCharCount método generalmente se ejecuta con mayor rapidez.The GetCharCount method generally allocates less memory, while the GetMaxCharCount method generally executes faster.

Con la detección de errores, una secuencia no válida hace que este método producir una ArgumentException excepción.With error detection, an invalid sequence causes this method to throw an ArgumentException exception. Sin detección de errores, se omiten las secuencias no válidas y se produce ninguna excepción.Without error detection, invalid sequences are ignored, and no exception is thrown.

Consulte también:

Se aplica a