Entrada Salida_datos _en_java

Páginas: 15 (3579 palabras) Publicado: 7 de octubre de 2015
Tema 7: Entrada/Salida
Todo programa procesa unos dados de entrada, y produce una salida. Por ello, resulta
fundamental el conocer las distintas formas de entrada/salida que se pueden dar en un
programa. En este tema, analizaremos los mecanismos que proporciona el lenguaje Java para
proporcionar datos de entrada y de salida.

1. Archivos y flujos
El término "fichero" o "archivo" es unaabstracción que representa la infomación que se
almacena físicamente en algún dispositivo, como un disco duro o un disquette. Podemos pensar
en un fichero como en una colección de información relacionada lógicamente, como el código
fuente de un programa, o el conjunto de datos de los empleados de una empresa.
Java considera los archivos como flujos secuenciales de bytes. Cada archivo termina con un
marcadorde fin de archivo o bien en un número de byte específico registrado en una estructura
de datos mantenida por el sistema. Para poder leer o escribir en un archivo, es necesario
"abrirlo" primero. Cuando se abre un archivo, se crea un objeto y se asocia un flujo1 (stream) a
dicho objeto. Cuando comenzamos a ejecutar una aplicación o un applet de Java, se crean
automáticamente tres objetos de flujo:System.in, System.out y System.err. Los flujos
asociados a estos objetos proporcionan canales de comunicación entre un programa y un
archivo o dispositivo en particular. Por ejemplo, el objeto System.in (objeto de flujo de entrada
estándar) permite a un programa introducir bytes desde el teclado, el objeto System.out (objeto
de flujo de salida estándar) permite a un programa enviar datos a lapantalla, y el objeto
System.err (objeto de flujo de error estándar) permite a un programa enviar mensajes de error a
la pantalla.
Si queremos procesar archivos en Java necesitamos importar el paquete java.io. En la
Figura 7.1 aparece representada parte de la jerarquía de clases relacionada con la
entrada/salida de datos. Este paquete incluye las definiciones de las clases de flujos comoFileInputStream (para el flujo de entrada de un archivo) y FileOutputStream (para el flujo de
salida a un archivo). Los archivos se abren creando objetos de estas clases de flujo que se
derivan de las clases InputStream y OutputStream, respectivamente. Las clases InputStream
y OutputStream son clases abstractas que definen métodos para realizar operaciones de
entrada y salida.
Es importante destacar que losobjetos InputStream poseen un método de lectura, read(),
que tiene el efecto lateral de eliminar el byte o bytes leídos, en vez de copiarlos. Otro método
interesante implementado por las subclases de InputStream es el método close(), éste
libera los recursos utilizados por el sistema, y como consecuencia, hace que sean imposibles
posteriores operaciones de lectura.
Siempre se debe cerrar un objetoInputStream, mediante el método close() , cuando se
haya dejado de utilizar.
Las signaturas de dichos métodos son:
1

Se denomina flujo a una secuencia de datos que proviene de una determinada fuente. Así, el teclado se
modela como un flujo, al igual que un archivo de disco.

Tema 7. Entrada/Salida

int read() throws IOException
void close() throws IOException

Object
File
InputStreamFileInputStream
FilterInputStream
DataInputStream
OutputStream
FileOutputStrea
FilterOutputStream
DataOutputStream
Figura 7.1. Parte de la jerarquía de clases del paquete java.io
El método skip(n) permite descartar un cierto número de bytes del flujo de datos, tal y
como si hubiesen sido leídos. Este método devuelve el número real de bytes descartados, ya
que, puede que no haya n bytes disponibles en elflujo. Su signatura es:
long skip(long n) throws IOException
La clase OutputStream es similar a la clase InputStream. Una instancia de OutputStream
proporciona un lugar en donde nuestro programa puede escribir uno o más bytes. También
dispone del método close(), el cual, una vez ejecutado, no permite realizar más operaciones
sobre dicho flujo.
Siempre se debe cerrar un objeto OutputStream, mediante...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Entrada
  • Entrada
  • ENTRADA
  • entrada
  • Entrada
  • entrada
  • Entrada
  • entrada

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS