feed twitter facebook LinkedIn facebook

Java » Lectura de caracteres por consola en Java

abril 6, 2007 por Víctor Cuervo 31 Comentarios Imprimir Imprimir

La idea de este ejemplo es simple. Consiste en realizar una lectura de un caracteres por consola en Java. Posteriormente mostraremos, nuevamente por la consola, los caracteres leídos. Esto lo podríamos hacer apoyándonos sobre las librerías de streaming de Java. Pero con este simple código podremos leer de la consola sin tener mucho conocimiento.

Lo primero que tendremos que hacer es crear una aplicación Java de consola. Para ello simplemente necesitaremos de una clase y un método main. Por ejemplo:

public class LecturaCaracterConsola {
  public static void main(String[] args) throws IOException {
  }
}

La lectura se realiza mediante el método System.in.read(), el cual nos devolverá un número entero que es el ASCII del carácter introducido por teclado.

Lo que haremos será leer dentro de un bucle, hasta que el carácter que leamos por el teclado sea el "13". El código "13" representa el salto de línea, el cual, precedido del "10" (retorno de carro), nos indica que el usuario ha pulsado la tecla de "intro".

while (caracter!=13) {
	caracter = System.in.read();
	System.out.print((char)caracter);
}

Hay que fijarse que al volcar a la pantalla hemos hecho un "casting" del número para mostrar la representación ASCII. Esto lo conseguimos poniendo (char) antes de la variable.

System.out.print((char)caracter);

Lo único que nos quedará es controlar la excepción IOException. Dada la sencillez del ejemplo, simplemente nos limitaremos a lanzarla desde el método main.

Visualizar el ejemplo | Descargar el código

Foro sobre Java Básico
Foro sobre Java Básico
tags: ,

Artículos relacionados:

31 comentarios »

RSS feed para los comentarios de esta entrada. TrackBack URI

1 2 3 4
  1. ichramm
    abril 11, 2007 #

    de esta forma puedo leer un double??
    es decir, puedo guardar los char en un string y luego parsearlos

    alguna ayuda con el codigo??

  2. lineadecodigo
    abril 11, 2007 #

    Este código es muy sencillo y está orientado al aprendizaje. Si quieres hacer lecturas más avanzadas te recomiendo que te leas Lectura de datos por consola en Java.

    En este se explica como leer String, las cuales puedes convertir a Double de forma muy sencilla.

    Double.parseDouble(String);
  3. nuse
    octubre 25, 2007 #

    Muy mal explicado, haber, si es un tutorial muy sencillo para novatos a que viene esta explicación tan rara? Es decir, lo del control de errores un novato flipará en colores asi explicado, de hecho siguien exáctamente lo que dices da error XD, explicate mejor que los novatos fliparán con este tutorial.

  4. erika
    noviembre 1, 2007 #

    hola necesito algo muy simple alguien me puede ayudar con un ejercicio que me muestre 10 edades digitadas y al final me diga cual es mayor de edad hecho en java

  5. Yenier
    diciembre 2, 2007 #

    como hago aplicaciones que corran en la pantallita negra de la consola . Digamos que quiero que me traduzcan este codigo de c++ a java porque no se como manejar el flujo de datos en java . Yo estoy aprendiendo en el NetBeans
    este es el codigo a traducir

    int entero ;
    cin >> entero ;
    cout

  6. Gonzalo Ron
    mayo 23, 2008 #

    String linea = System.console().readLine();

    A partir de la version 1.6

  7. Eduardo Ballesteros
    junio 19, 2008 #

    Excelente tu pagina, me han gustado las expliaciones, pero me surge una duda, el metodo System.in.read() solo lee de a un solo caracter????, no existe la posbilidad de leer digamos 3 digitos y haga concatenacion de estos, me explico necesito leer por consola digamos el numero 999 como hago????

    Muchas gracias

  8. Gonzalo Ron
    junio 20, 2008 #

    La versión de Java 1.6 incluyó una nueva clase llamada Console, con métodos muy útiles para la impresión y captura de la consola.

    Haces lo siguiente:

    Console miConsola = System.console();

    y ya con el objeto de tipo Console se pueden invocar metodos muy utiles como readLine(), readPassword(), printf(), etc.

    El metodo printf es muy util porque es parecido el printf que se utiliza en Lenguaje C.

    Revisa la API y vas a poder ver que esta clase es de mucha utilidad.

    Saludos.

    P.D. Te recomiendo este foro que es bastante activo en cuanto a Tecnologia Java: http://espanol.groups.yahoo.com/group/SoloJava/

  9. Eduardo Ballesteros
    junio 20, 2008 #

    Que pena tanta molestia ya intente implementar estos metodos de console

    Console console = System.console();
    String username = console.readLine(“Usuario? “);

    estoy trabajando con eclipse, y no me marca errores, pero al momento de ejecutar tengo un NullPointerExeception

    gracias
    Tengo que implementar algo de try catch?????

  10. Gonzalo Ron
    junio 23, 2008 #

    Acabo de correr exactamente el codigo que me enviastes y corre sin problemas. Debes tener un problema de NullPointerException en otro sitio. Cuando utilizas la clase Console NO tienes que usar ningun try catch.

    Un problema de NullPointerException ocurre cuando posees una referencia con valor null y tratas de acceder a alguno de sus metodos o atributos. Si quieres enviame el pedazo de codigo y te ayudo. Mi correo personal es gonzaloronvera@gmail.com

1 2 3 4

Deja un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*