domingo, 10 de abril de 2016

Los flujos de Java



Prácticamente todos los programas deben leer datos del exterior para procesarlos y después presentar los resultados. La información que necesita un programa normalmente se obtiene mediante la entrada de datos por el teclado o leyendo un fichero. Los resultados de la ejecución de un programa se pueden presentar por la consola, la impresora o en un fichero. El tipo de información que se utiliza tanto en las entradas como en las salidas puede tener diversos formatos: texto, imagen, sonido, binario, etc. 

En Java, la entrada de datos se realiza mediante un flujo de entrada. Para realizar la entrada de datos es necesario abrir el flujo de entrada, leer la información del flujo hasta el final y por último cerrar el flujo. La salida se hace mediante un flujo de salida. Para realizar la salida de datos es necesario abrir el flujo de salida y a continuación se escribe en él toda la información que se desee, por último, se cierra el flujo. 

Este esquema de entradas y salidas basadas en un flujo permite que las entradas sean independientes de la fuente de datos y que las salidas sean independientes del destino de los datos. 
Un flujo en Java es un objeto que se utiliza para realizar una entrada o salida de datos. Representa un canal de información del que se puede leer o escribir datos de forma secuencial. Existen dos tipos de flujos en Java, los que utilizan bytes y los que utilizan caracteres. 

La siguiente tabla muestra los flujos de entrada de datos de Java:



La siguiente tabla muestra los flujos de salida de datos de Java:



Existen flujos con bytes y flujos con caracteres que se aplican a la misma entrada o salida. FileInputStream y FileOutputStream son flujos para leer y escribir bytes en un fichero, FileReader y FileWriter también son flujos que se aplican a ficheros, pero en este caso para leer y escribir caracteres.

Los flujos se pueden utilizar solos o combinados. Si se combinan dos flujos, por ejemplo uno que lea caracteres de un archivo con otro que convierta a mayúsculas los caracteres, entonces el resultado final es un flujo del que se leen caracteres en mayúsculas. 

En los siguientes ejemplos se muestran las aplicaciones de algunos de estos flujos para leer datos del teclado, leer y escribir en ficheros de texto o leer y escribir ficheros de objetos.


Espero haber ayudado en algo. Hasta la próxima oportunidad!











  

No hay comentarios:

Publicar un comentario en la entrada