Leer datos desde el teclado con Java

julio 12 20092 comentarios

Guardado en : Programación, Software Libre

Leer datos con Java

Read from Console Standard Input with Java

Si alguna vez, necesitaste leer datos desde el teclado de tu computadora usando Java, este es el código necesario.

Dado que Java, no implementa una clase que funcione de forma similar al “scanf” de C, necesitamos crear nuestra propia rutina de lectura de datos.

Para esto son muy útiles la clases del paquete ‘java.io’, que nos permiten trabajar con flujos de información, y dado que la lectura de datos de sistema es un flujo (revisar System.in).

Esta clase Input, que he creado permite leer Strings, char, double e int, utilizala como necesites y si tienes dudas, puedes escribirlas en los foros.

package lecturadatos;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class Input {
	public String readString(){
	String s = null;
	try{
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		s = in.readLine();
	}catch(IOException e){
		System.out.println("Error al leer");
		e.printStackTrace();
	}
	return s;
	}
	public double readDouble(){
		String s = null;
		try{
			BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
			s = in.readLine();
		}catch(IOException e){
			System.out.println("Error al leer");
			e.printStackTrace();
		}
		return Double.parseDouble(s);
		}
	public int readInt(){
		String s = null;
		try{
			BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
			s = in.readLine();
		}catch(IOException e){
			System.out.println("Error al leer");
			e.printStackTrace();
		}
		return Integer.parseInt(s);
		}
	public char readsChar(){
	char c = ' ';
		try {
			java.io.BufferedInputStream b = new BufferedInputStream(System.in);
			 c = (char) b.read();
		} catch (IOException e) {
			System.out.println("Error al leer");
			e.printStackTrace();
		}
	return c;
	}
}
public class LecturadeDatos {
	public static void main (String []args) {
		lecturadatos.Input input = new lecturadatos.Input();
		System.out.println("Leer cadena: ");
		String s = input.readString();
		System.out.println("Leer caracter: ");
		char c= input.readsChar();
		System.out.println("Leer entero: ");
		int i=input.readInt();
		System.out.println("Leer double: ");
		double d=input.readDouble();
		System.out.println("s="+s+", c="+c+",i="+i+",d="+d );
   }
}
Comparte esta información:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • LinkedIn
  • Technorati
  • TwitThis

Quizá te interese :

Acerca del autor: Daniel

2 Respuestas a “Leer datos desde el teclado con Java”

  1. Anselmo dice:

    Existe otra solución más sencilla desde la publicación de JDK 1.5 (5.0):

    ——————

    import java.util.*;
     
    public class LecturadeDatos2 {
    	public static void main (String []args) {
    		Scanner teclado = new Scanner(System.in);
     
    		System.out.println("Leer cadena: ");
    		String s = teclado.nextLine();
    		System.out.println("Leer caracter: ");
    		char c = teclado.findWithinHorizon(".",0).charAt(0);
    		System.out.println("Leer entero: ");
    		int i = teclado.nextInt();
    		System.out.println("Leer token: ");
    		String t = teclado.next();
     
    		System.out.println("s="+s+", c="+c+", i="+i+", d="+d+", t="+t );
        }
    }
  2. Daniel dice:

    Muchas gracias, por el comentario y el código.
    Esperamos verte pronto, participando aquí en Ubicuos.com

    ?

Deja un comentario


Licencia y uso

Las técnicas demostradas en los tutoriales pueden ser utilizadas sin ninguna limitación y tampoco es obligatorio dar una atribución.


Los textos, imágenes y tutoriales son propiedad de sus respectivos autores, nuestro contenido se encuentra bajo licencia Creative Commons Share-Alike.

Escribe algo para el sitio

El escribir un tutorial o un artículo, mandarnos un enlace para Ubicuos, no solamente es una forma de obtener publicidad, si no también de dar algo a la comunidad y nosotros te lo recompensamos con los premios del mes! Leer más de nuestras promociones

¿Sugerencias?

Este es TU sitio, si tienes sugerencias o ideas de cómo podemos mejorarlo para ti, ¡Por favor háznoslos saber!

Hacemos nuestro mayor esfuerzo en proporcionar un sitio útil y amigable y esperamos que disfrutes tu tiempo aquí.

Ayuda a Difundir

Te gusta Ubicuos?

Ve las formas en que nos puedes apoyar.

Apoyando a Ubicuos.com

Submit your linkClose

-->