pocket edition dinnerbone anlyticsed java unicode non-printing-characters

edition - char imprimible en java



minecraft wiki (2)

¿Alguien sabe cómo detectar caracteres imprimibles en java?

Después de un tiempo (prueba / error) llego a este método:

public boolean isPrintableChar( char c ) { Character.UnicodeBlock block = Character.UnicodeBlock.of( c ); return (!Character.isISOControl(c)) && c != KeyEvent.CHAR_UNDEFINED && block != null && block != Character.UnicodeBlock.SPECIALS; }

Recibo la información a través de KeyListener y vengo Ctr-''key ''impreso un cuadrado. Con esta función parece bastante suficiente.

¿Me falta algo de char aquí?


No estoy seguro de si entiendo tu problema. Pero si quiere detectar si el personaje puede ser dibujado al objeto Graphics, y si no imprime un marcador de posición, puede encontrar útil:

Font.canDisplay(int)

Verificará si la fuente puede mostrar un punto de código específico (es más que comprobar si la fuente se puede visualizar en absoluto, ya que hay caracteres que se pueden mostrar como, por ejemplo, ± pero algunas fuentes no pueden mostrarlos).


Parece que esta era la forma independiente de "Font".

public boolean isPrintableChar( char c ) { Character.UnicodeBlock block = Character.UnicodeBlock.of( c ); return (!Character.isISOControl(c)) && c != KeyEvent.CHAR_UNDEFINED && block != null && block != Character.UnicodeBlock.SPECIALS; }