Entrada De Datos

Páginas: 5 (1166 palabras) Publicado: 7 de septiembre de 2015
ENTRADA DE DATOS
Entrada de datos
La lectura de datos del exterior se gestiona a traves de la clase InputStream. Un objeto InputStream está asociado a un dispositivo de entrada, que en el caso de la entrada estandar (el teclado) podemos acceder al mismo a traves del atributo estático in de la clase System.

Sin embargo, el metodo read() proporcionado por la clase InputStream para la lecturade los datos no nos ofrece la misma potencia que print o println para la escritura. La llamada a read() devuelve el último caracter introducido a traves del dispositivo, esto significa que para leer una cadena completa seria necesario hacerlo caracter a caracter, lo que haria bastante ineficiente el codigo.

Por ello, para realizar la lectura de cadenas de caracteres desde el exterior espreferible utilizar otra de las clases del paquete java.io, la claseBufferedReader.

La lectura de datos mediante BufferedReader requiere seguir los siguientes pasos en el programa:
1.- Crear el objeto InputStreamReader.

Este código permite convertir los bytes recuperados del stream de entrada en caracteres. Para crear un objeto de esta clase, es necesario indicar el objeto InputStream de entrada, sila entrada es el teclado, este objeto lo tenemos referenciado en el atributo in de la clase System.
?
1
2
InputStreamReader rd;
rd = new InputStreamReader(System.in);

2.- Crear un objeto BufferedReader

A partir del objeto anterior se puede construir un BufferedReader que permita realizar la lectura de cadenas:
?
1
2
BufferedReader bf;
bf = new BufferedReader(rd);

3.- Invocar almétodo readLine()

El método readLine() de BufferedReader devuelve todos los caracteres introducidos hasta el salto de línea, si lo utilizamos para leer una cadena de caracteres desde el teclado, devolverá los caracteres introducidos desde el principio de la línea hasta la pulsación de la tecla Enter:
?
1
String s= bf.readLine();
En el ejemplo siguiente, un programa que pide un dato para mostrarlo en laconsola.
Hay que mencionar que cualquier software tiene que plantearse de manera que pueda capturar los errores, tales como que se pida un número y se introduzca un nombre. Para manejar esos errores se crean excepciones. En JAVA una excepcion es algo que ocurre que no está planteado, en definitiva, un error incontrolado.
Mas adelante veremos como se capturan las excepciones.
Cuando la llamada a unmétodo de un objeto puede lanzar una excepción, el programa que utiliza ese método está obligado a capturarla o a relanzarla.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.io.*;
public class Ejemplo
{
   // throws IOException lanza la excepcion
   public void static main (Strings [] args) throws IOException
   {
      String cad;
      ImputStreamReader ir;
      Buffered bf;
      ir= new InputStreamReader(System.in);
      bf = new BufferedReader(ir);
      System.out.println("Introduzca un nombre :");
      cad = bf.readLine();
      System.out.println("Te llamas: " + cad);
   }
}


Este es el caso del metodo readLine() de BufferedReader, cuya llamada puede lanzar la excepcion IOException. En este ejemplo, se ha optado por relanzar la excepcion, incluyendo throwsIOException en la cabecera del método main().
Cuando se utiliza readLine() para leer datos numéricos, hay que tener en cuenta que el método devuelve String, por lo que debemos recurrir a los métodos de las clases de envoltorio comentados anteriormente (los metodos estáticos parseXXX(String)) para convertir el dato a número y poder operar con el.
El siguiente código corresponde a una mejora delprograma que realiza el calculo del factorial de un número, incluyendo la lectura de dicho número porreadLine().
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import java.io.*;
public class Factorial
{
    public static void main (String [] args) throws IOException
   {
       String cad;
       long result = 1;
       BufferedReader bf = new BufferedReader(new InputStreamReader(System.ini));...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Entrada y salida de datos
  • Entrada y salida de datos
  • Entrada Y Salida De Datos En Java
  • entrada y salida de datos en java
  • Relevamiento de Datos Registro Entrada Salida
  • Controles de entrada de datos, procesos y su importancia
  • Digitalización y Entrada De Datos En Arccatalog y Arcmap
  • 1. Variables y entrada y salida de datos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS