1 / 34

NOMBRE: AURORA MENDOZA PASTRANA PROFESORA: ING. ANGELINA LEAL ALVARADO

NOMBRE: AURORA MENDOZA PASTRANA PROFESORA: ING. ANGELINA LEAL ALVARADO MATERIA: PROGRAMACION ORIENTADA A OBJETOS. CONCEPTO DE FLUJO EN JAVA.

duard
Download Presentation

NOMBRE: AURORA MENDOZA PASTRANA PROFESORA: ING. ANGELINA LEAL ALVARADO

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NOMBRE: AURORA MENDOZA PASTRANA PROFESORA: ING. ANGELINA LEAL ALVARADO MATERIA: PROGRAMACION ORIENTADA A OBJETOS

  2. CONCEPTO DE FLUJO EN JAVA La informacion que necesita un programa para su funcion se obtiene mediante una entrada de una fuente de datos que puede ser de tipos muy variados: desde el teclado, desde un archivo, en la pantalla, en la impresora, etc.

  3. La forma como se genera este resultado puede ser de muy diferente tipo: texto, Binario, imágenes, etc. En java la entrada de los datos se realiza mediante un flujo de entrada. La salida se realiza mediante un flujo de salida.

  4. El esquema para trabajar con los flujos de datos tanto de entrada como de salida es el que se muestra a continuación:

  5. TIPOS DE FLUJOS Existen dos tipos de flujos definidos en java: unos que trabajan en bytes y otros que trabajan con caracteres. Así mismo existen clases conversoras que permiten obtener un flujo de bytes a partir de uno de caracteres y viceversa, tanto como lectura como para escritura.

  6. Las clases mas importantes a tener en cuenta son en las que se muestran en la siguiente imagen:

  7. LEER Y ESCRIBIR EN UN ARCHIVO Un archivo se encuentra en un disco. Desde el punto de vista de lectura y de escritura un archivo se trata de una secuencia continua de datos, de bytes o caracteres. En la siguiente imagen se puede mostrar una representación de caracteres:

  8. La forma básica de utilizar un archivo para entrada y para salida de datos para leer el archivo y para escribir respectivamente se muestra en la siguiente imagen:

  9. En el siguiente ejemplo se muestra un programa que abre un archivo llamado “prueba.txt”, escribe en el archivo caracteres en los caracteres “a” a la “z”, carácter a carácter, escribe por pantalla los caracteres leídos.

  10. Para escribir en el archivo, se abre el flujo del archivo con la sentencia: FileWriter Archivo-new FileWriter(“prueba.txt”): Si el archivo no existe, lo crea. Si el archivo ya existe, elimina su contenido y empezara a escribir como si estuviese vacio. Si no puede abrir el archivo para escribir, genera una excepcion.

  11. Para leer el archivo se abre el flujo utilizando la sentencia: FileReader Archivo=new fileReader (“prueba.txt”)

  12. Esta sentencia intenta abrir el archivo especificado. Si existe y se puede abrir para lectura, lo abre. En ambos casos se han terminado de escribir o de leer, se cierra el flujo utilizando el metodoclose() sobre el objeto flujo.

  13. FILTROS Se denomina filtros a las clases que representan un flujo de datos, ya sean de lectura o de escritura pero cuyo origen o destino de los datos es otro flujo. Estos flujos que se conectan a otros flujos que ya existen para, leyendo a través de los mismos transformar los datos, permiten proporcionar métodos de lectura o escritura mas apropiados al programador.

  14. La siguiente imagen muestra como se puede utilizar el filtro BufferedReader para escribir la pantalla el contenido de un archivo que en este caso se trata del programa java:

  15. ENTRADA DESDE TECLADO Parala lectura de datos desde el teclado en java se dispone de la clase Scanner para solicitar datos al usuario. Java proporciona un flujo para la entrada predeterminada llamado: System.in que el sistema abre al empezar la ejecución del programa.

  16. Este flujo lee, por defecto, del teclado. Así mismo se dispone del flujo System.out para la salida predeterminada. Este flujo lee, por defecto, en la pantalla en la consola de java.

  17. En la siguiente imagen se van a leer los distintos tipos de datos del teclado como líneas completas que introduzca el usuario:

  18. LA CLASE FILE La clase file no sirve para leer ni para escribir en un archivo sino que permite, entre otras operaciones: • Obtener el tamaño del archivo. • Obtener el nombre completo, incluida la ruta. • Cambiar el nombre. • Eliminar el nombre. • Saber si es un directorio o un archivo. • Si es un directorio, obtener la lista de los archivos y directorios que contienen. • Crear un directorio.

  19. ARCHIVO DE ACCESO ALEATORIO La clase RandomAccessFile permite abrir un archivo de lectura, o de lectura y de escritura simultaneamente. Si se utiliza para lectura del archivo modo (“r”) dispone de metodos para leer elementos de cualquier tipo primitivo.

  20. Los métodos que resultan de interes para el acceso aleatorio son los que permiten acceder a un lugar concreto dentro del archivo: • getfilePosition(): devuelve la posicion actual donde se va a realizar la operación de lectura o de escritura, devuelve la posicion, contando en bytes donde se encuentra actualmente el cursor del archivo. • Seek(): situa la posicion de la proxima operación de lectura o de escritura en el byte especificado. • Tength(): devuelve el tamaño actual del archivo.

  21. En la siguiente imagen se puede mostrar como se utiliza para ir leyendo carácter a carácter de un archivo.

  22. LECTURA Y ESCRITURA DE UN ARCHIVO Se puede utilizar la capacidad de java para dar soporte a la serializacion de objetos para poder leer y escribir objetos completos sin preocuparse de cómo están implementados por dentro. Para que una clase pueda ser serializable debe de implementar la interfaz Serializable.

More Related