t4 - entrada y salida en java

11
Tema – 4 Entrada y salida en Java

Upload: daniel-santiago-martinez

Post on 24-May-2015

6.343 views

Category:

Education


2 download

DESCRIPTION

Entrada y salida en java

TRANSCRIPT

Page 1: T4 - Entrada y salida en java

Tema – 4Entrada y salida en Java

Page 2: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 2

4.1. Entrada

• La entrada estándar del ordenador es el teclado.

• Java nos ofrece las herramientas necesarias para leer los datos que un usuario introduce en un programa a través del teclado.

• Para ello, se emplea el objeto System.in, perteneciente a la clase InputStream.

Page 3: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 3

4.1. Entrada

• El objeto System.in ofrece diversos métodos para leer del teclado. El más básico es el método read.

• Ejemplo:char variable = (char) System.in.read();

• El método read devuelve el código ASCII, en decimal, del carácter introducido.

• El método read permite leer un único carácter a la vez.

Page 4: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 4

4.1. Entrada

• Ejemplo de programa que lee un carácter del teclado:public static void main(String args[]){

char c;try{

c = (char)System.in.read();System.out.println(“Has escrito la letra ” + c);

}catch(Exception e){

System.out.println(e); }}

Page 5: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 5

4.1. Entrada

• En el ejemplo puede llamar la atención una estructura que aún no conocemos: los bloques try/catch.

• Sirven para tratar excepciones, es decir, posibles errores que puedan darse durante la ejecución de un programa.

• Las excepciones se tratarán en el tema 7.

Page 6: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 6

4.1. Entrada

• Para no tener que leer de carácter en carácter, Java ofrece una clase diferente: la clase BufferedReader.

• Creamos un objeto de la clase BufferedReader a partir de la clase InputStream.

• Ejemplo:InputStreamReader isr = new InputStreamReader(System.in);BufferedReader br = new BufferedReader(isr);

Page 7: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 7

4.1. Entrada

• Para leer una frase del teclado, utilizaremos el siguiente método de la clase Bufferedreader: readLine().

• Este método lee todos los caracteres introducidos por el usuario hasta detectar un salto de línea (INTRO).

• Ejemplo:String frase = br.readLine();

Page 8: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 8

4.1. Entrada• Ejemplo de programa que lee una frase del teclado:

import java.io.*;class Programa{public static void main(String args[]){ String frase; InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr); try{frase = br.readLine();System.out.println(“Has escrito la frase: “ + frase); } catch(Exception e){System.out.println(e); }}}

Page 9: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 9

4.1. Entrada

• En ocasiones tendremos programas en los que nos interesará leer otros tipos de datos, por ejemplo números.

• Para transformar la cadena de caracteres que lee el método readLine() de la clase BufferedReader, podemos utilizar el siguiente código:int numero = Integer.parseInt(br.readLine());

Page 10: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 10

4.2. Salida

• Java utiliza dos objetos para la salida. El primero que trataremos es System.out.

• System.out: implementa la salida estándar. Los métodos que nos proporciona para controlar la salida son:– print(a): imprime a en la salida, donde a puede ser

cualquier tipo básico de Java ya queJava hace su conversión automática a cadena.

– println(a): igual que el método anterior, salvo que imprime un salto de línea después de a.

Page 11: T4 - Entrada y salida en java

PROGRAMACIÓN – Daniel Santiago 11

4.2. Salida

• El segundo de los objetos de salida es System.err.• System.err: implementa la salida en caso de error.

Normalmente esta salida es la pantalla, pero puede ser interesante redirigirlo, por ejemplo a un fichero, para diferenciar claramente ambos tipos de salida.

• Los métodos de este objeto son idénticos a los de System.out.

• System.err suele usarse en las construcciones try-catch.