SoloCodigo
Programación General => Java => Mensaje iniciado por: beliytxuri en Lunes 6 de Abril de 2009, 12:35
-
¿Cómo se puede simular en java las utilísimas aplicaciones de la biblioteca conio.h de C++ (getch(), getche(), kbhit(), etc.?
Gracias
-
Si lo que pretendes es leer caracteres de la pantalla te aconsejo que te centres en buscar informacion sobre I/O en vez de buscar un simil a la libreria conio.h
Para leer un String de teclado seria...
String línea;
try{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
línea = br.readLine();
}catch(Exception e){ e.printStackTrace();}
System.out.println(línea);
-
Gracias, Lucbel. Yo lo que quiero hacer es un package con estas utilidades:
char getch() - Devuelve el carácter pulsado en el teclado. (Sin necesidad de pulsar INTRO). Muy útil para las instrucciones del tipo "Pulsa una tecla para continuar".
char getche() - Ídem que la anterior, pero deja "eco", o sea, imprime el carácter pulsado en la consola.
bool kbhit() - Devuelve 'true' si se ha pulsado una tecla o 'false', en caso contrario.
Y muchas otras más de este estilo...
Las soluciones en base a InputStream o InputReader no funcionan, pues siempre exigen la pulsación de INTRO, para que la máquina lea.
No sé por qué, pero en los lenguajes nuevos se olvidan estas funciones, llamémoslas de 'bajo nivel' que ya estaban implementadas en el BASIC de los Spectrumes, Amstrades y compañía. Y la documentación relativa a I/O cada vez es más farragosa y antinatural.
Saludos. :hitcomp:
-
Nunca lo he necesitado pero creo que en el paquete de java.io deberia haber algo parecido.
Igualmente piensa que el tema del eco siempre estará. Podrias intentar cambiar el color de la letra para que no se viese.
Conozco perfectamente todos los "tipos Basicos" de este tipo pues suelo hacer cosas en ensamblador.
Suerte.
-
ASÍ A PRIMERA VISTA PARECE QUE ES MEJOR UN ENFOQUE CON EVENTOS, QUE CON STREAMS I/0. VOY A TRABAJARLO UN POCO, A VER SI CONSIGO ALGO. YA TE CONTARÉ.