Tecnología

Inicio

Cómo detectar caracteres multibyte en Java

Cuando se trabaja con cadenas de Java que contienen caracteres de varios bytes, es necesario el uso de funciones que soportan caracteres de varios bytes y cargar un juego de caracteres apropiado para mostrarlos. codificaciones multibyte, como UTF-8, son útiles cuando se necesita para almacenar caracteres en idiomas distintos del inglés, como el japonés y el chino, que el juego de caracteres estándar no es compatible. El String de Java y las clases de caracteres pueden contener caracteres de varios bytes, pero no existe una simple función incorporada en informarle si lo hacen o no. Para detectar caracteres de varios bytes, lo que tiene que bucle de forma manual a través de cada carácter de la cadena y comprobar si todos los caracteres contienen más de un solo byte.

Instrucciones

1 Abra el archivo de Java con un editor como NetBeans, Eclipse o JBuilder X.

2 Declarar las variables necesarias para detectar caracteres de varios bytes añadiendo el siguiente código en la parte superior de su función:

char [] c_array;

C_STRING cadena;

byte [] c_byte_array;

resultado booleano;

cadena str;

3 Inicializar la variable "str" ​​con un valor de texto añadiendo el siguiente código en su función:

str = "muestra de texto de la cadena";

4 Recorrer cada carácter y comprobar si se trata de varios bytes añadiendo el siguiente código en su función:

c_array = str.toCharArray ();

resultado = false;

para (char c: c_array)

{

C_STRING = Character.toString (c);

c_byte_array = c_string.getBytes ( "UTF-8");

si (c_byte_array.length> 1)

{

System.out.println("Detected a multibyte character.");

resultado = true;

descanso;

}

}

si (resultado!)

System.out.println ( "no detectó caracteres de varios bytes.");

El bucle convierte cada carácter en una cadena. A continuación, convierte la cadena en una matriz de bytes. Por último, se comprueba la longitud de la matriz de bytes. Una longitud mayor que uno indica un carácter multibyte presente en la cadena.

5 Guarde el archivo de Java, compilar y ejecutar el programa para buscar una cadena de caracteres de varios bytes.