Jaja tema gracioso y pesar que mi sobrino me tenia un respeto por tener algo de
conocimiento de java.
Pero que caprichito, definitivamente si quiere convencer a su profe se tendra
que crear este proceso en c y correrlo en win.
Muchas gracias de todas maneras
2008/10/7 Antonio Ognio <[EMAIL PROTECTED]>
El día 7 de octubre de 2008 10:41, Oscar Gosdinski<[EMAIL PROTECTED]> escribió:
> Lo que sucede es que al leer de System.in, estás leyendo el stdin del> SO,
> por tanto el usuario tiene que escribir en stdin lo que se> ingresará en el
> programa. Al escribir el nombre y el retorno de carro> esto será mostrado en
> la terminal a menos que bloquees la terminal> para que no se muestre lo que
> estás ingresando (como lo hace por> ejemplo el programa passwd). Ojo que esto
> último es un comportamiento> del SO _no_ de Java, por lo que no lo puedes
> evitar programando.Efectivamente. Conozco Java pero no es mi especialidad y
> me acabo desorprender de comprobar buscando en Google y preguntando en
> canales deJava especializados que simplemente NO es posible leer un caracter
> enla consola sin imprimirloen pantalla utilizando codigo 100% Java y
> queademás sea portable
> :(http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4050435Al parecer, es
> posible hacer este "truco" utilizando clases que paraalgo tan simple son
> bastante complejas como jcurses o jline que sonlos equivalentes en Java a
> curses y GNU readline respectivamente. Sinembargo, ambas clases se apoyan en
> llamadas a programas nativos deWindows o UNIX porque el propio estandar de
> Java no permite este tipode comportamiento.
Es el problema de buffering. Muchas de las consolas hacen input buffering antes
de pasar la info al programa. Por eso, aún con java.io.Console en Java 6, se
tiene el problema que mencionas.Fíjate un bug
actualizado:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6351276
Entonces la respuesta correcta a tu sobrino es que tu no estabas mal,Java esta
mal! :) Esto si es sencillo de hacer en otros lenguajes comoC por ejemplo,
aunque si nos vamos a ir por el lado de hacerlo concodigo en C realmente
portable parece que la cosa se complica de nuevoporque getch() no esta
disponible en tooodas las plataformas, al finalnuevamente hay que recurrir a
curses y librerias parecidas.
Habría que ver si la definición o descripción inicial esta correcta, puesto que
la tarea podría haber sido (quizás más razonablemente):(1) Pedir datos al
usuario (uno a la vez)(2) Al final, imprimirlos formateados en una sola línea.
Una opción, podría usa el método Console.readPassword(), pero no estoy seguro
si cumpliría con las condiciones iniciales, que son mas estrictas que las que
menciono arriba.
Bien curioso el tema.. Me encantaria que alguien me corrija pero metemo que no
va a suceder :(Antonio
_______________________________________________Lista de correo
Linux-plugTemática: Discusión general sobre LinuxPeruvian Linux User Group
(http://www.linux.org.pe)Participa suscribiéndote y escribiendo a: [EMAIL
PROTECTED] darte de alta, de baja o hacer ajustes a tu suscripción
visita:http://listas.linux.org.pe/mailman/listinfo/linux-plugIMPORTANTE: Reglas
y
recomendacioneshttp://www.linux.org.pe/listas/reglas.phphttp://www.linux.org.pe/listas/comportamiento.phphttp://www.linux.org.pe/listas/recomendaciones.php--
Jesus M. Castagnetto <[EMAIL PROTECTED]>Web: http://www.castagnetto.com/
_________________________________________________________________
Discover the new Windows Vista
http://search.msn.com/results.aspx?q=windows+vista&mkt=en-US&form=QBRE
_______________________________________________
Lista de correo Linux-plug
Temática: Discusión general sobre Linux
Peruvian Linux User Group (http://www.linux.org.pe)
Participa suscribiéndote y escribiendo a: [email protected]
Para darte de alta, de baja o hacer ajustes a tu suscripción visita:
http://listas.linux.org.pe/mailman/listinfo/linux-plug
IMPORTANTE: Reglas y recomendaciones
http://www.linux.org.pe/listas/reglas.php
http://www.linux.org.pe/listas/comportamiento.php
http://www.linux.org.pe/listas/recomendaciones.php