Cacarteres unicode en java

Hola, una pregunta que me está volviendo loco. Como detecto los caracteres unicode (\u0XXX)que no son ASCII en Java. Estoy utilizando un software que casca cuando se encuentra un carácter Unicode. La idea es detectarlos y eliminarlos o substituirlos antes de que este software procese el String.
Sabes como puedo hacerlo

4 Respuestas

Respuesta
1
Java tiene un conversor de caracteres Unicode a ASCII, implementado en una clase llamada CharSetEncoder, recibe un flujo de bytes y lo convierte a ASCII, hay varias funciones realcionadas, tienes toda la información en la siguiente url: http://java.sun.com/j2se/1.4/docs/api/java/nio/charset/Chars
etEncoder.html
En el paquete java. Nio. Charset hay varias clases relacionadas con el tema de conversión entre mapas de caracteres.
Respuesta
1
En lugar de detectar los que no son ASCII, puedes detectar los que si lo son y añadirlos al String. Si te encuentras con uno que no lo es, no lo agregas.
Estos son algunos unicodes que son ASCII:
The uppercase letters 'A' through 'Z' ('\u0041' through '\u005a'), The lowercase letters 'a' through 'z' ('\u0061' through '\u007a'), The digits '0' through '9' ('\u0030' through '\u0039'), The dash character '-' ('\u002d', HYPHEN-MINUS), The colon character ':' ('\u003a', COLON), and The underscore character '_' ('\u005f', LOW LINE).
Cualquier otra duda, preguntame.
Respuesta
1
Pues antes de que casque, miras si es unicode, y si lo es, no realizas eso.
Los caracteres unicode van
Desde '\u0000' a '\uffff' inclusive. Esto es desde 0 a 65535
Respuesta
1
Lo que tienes que hacer es para cada carácter, antes de tratarlo, pedir su valor ASCII y comprobar que se encuentra en el rango estándar (creo que entre el 20 y el 120)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas