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, 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(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>)

Calcula el número de caracteres generado al descodificar el intervalo de bytes especificado.Calculates the number of characters produced by decoding the specified byte span.

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.

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 GetCharCount usa el método para devolver el número de caracteres que se generan 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 la matriz GetChars necesario para almacenar los caracteres resultantes, GetCharCount llame al 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, GetMaxCharCount llame al método.To calculate the maximum array size, call the GetMaxCharCount method. El GetCharCount método generalmente asigna menos memoria, mientras que el GetMaxCharCount método se ejecuta normalmente más rápido.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 ArgumentException método produzca una 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 no se produce ninguna excepción.Without error detection, invalid sequences are ignored, and no exception is thrown.

Consulte también:

GetCharCount(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>) GetCharCount(ReadOnlySpan<Byte>)

Calcula el número de caracteres generado al descodificar el intervalo de bytes especificado.Calculates the number of characters produced by decoding the specified byte span.

public:
 override int GetCharCount(ReadOnlySpan<System::Byte> bytes);
public override int GetCharCount (ReadOnlySpan<byte> bytes);
override this.GetCharCount : ReadOnlySpan<byte> -> int
Public Overrides Function GetCharCount (bytes As ReadOnlySpan(Of Byte)) As Integer

Parámetros

bytes
ReadOnlySpan<Byte>

Intervalo que contiene el conjunto de bytes que se descodificará.The span containing the set of bytes to decode.

Devoluciones

Número de caracteres generado al descodificar el intervalo de bytes especificado.The number of characters produced by decoding the specified byte span.

Comentarios

Para calcular el tamaño exacto que necesita GetChars para almacenar los caracteres resultantes, llame GetCharCount al método.To calculate the exact size required by GetChars to store the resulting characters, call the GetCharCount method. Para calcular el tamaño máximo, llame al GetMaxCharCount método.To calculate the maximum size, call the GetMaxCharCount method. El GetCharCount método generalmente asigna menos memoria, mientras que el GetMaxCharCount método se ejecuta normalmente más rápido.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 ArgumentException método produzca una 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 no se produce ninguna excepción.Without error detection, invalid sequences are ignored, and no exception is thrown.

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 la matriz GetChars necesario para almacenar los caracteres resultantes, GetCharCount llame al 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, GetMaxCharCount llame al método.To calculate the maximum array size, call the GetMaxCharCount method. El GetCharCount método generalmente asigna menos memoria, mientras que el GetMaxCharCount método se ejecuta normalmente más rápido.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 ArgumentException método produzca una 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 no 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 puede ser utilizado por código transparente o de confianza parcial.This member cannot be used by partially trusted or transparent code.

Consulte también:

Se aplica a