Lectura de datos mediante la clase Console con Java

13/Ene/2013 Java , , Deja un comentario

Para la lectura de datos mediante la clase Console con Java utilizando la clase Console necesitamos en primera instancia obtener la consola que es una instancia única que sigue el patrón de diseño Singleton.

Esto lo logramos de la siguiente manera:

  1. Console console=null;
  2. try{
  3. console=System.console();
  4. } catch(Exception ex){}

Cuando obtenemos la instancia principal de consola podemos hacer uso de las funciones de input de datos por teclado como son: readLine() y readPassword(), ambas funcionan en base a consola de usuario si hacemos uso de algún IDE quizas no nos funcione tan bien este ejemplo.

Para proceder a lectura de datos de consola tenemos que usar la funcion readLine() que hace la lectura de una linea desde teclado.

  1. String answer="";
  2. if(console!=null){
  3. try{
  4. answer=console.readLine();
  5. }catch(Exception ex){}
  6. }

En el código comprobamos si la variable console se ha instanciado, ya que si el entorno dónde ejecutamos el programa no tiene consola, la variable console tendrá un valor de null.

Y nuestro código de lectura de datos desde teclado quedaría así:

  1. public static String readLine(){
  2. String answer="";
  3. Console console=null;
  4. try{
  5. console=System.console();
  6. }catch(Exception ex){}
  7.  
  8. if(console!=null){
  9. try{
  10. answer=console.readLine();
  11. }catch(Exception ex){}
  12. }
  13. return answer;
  14. }

Bueno ahora solo nos queda ver como funciona en código Java invocando al método que hemos creado:

  1. String answer = "";
  2. answer=DataReaderConsole.readLine();
  3. System.out.println(answer);

Como podéis ver ha sido sencillo la lectura de datos mediante la clase Console con Java

Vídeos sobre Java


Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*