INGENIERIA EN SISTEMAS COMPUTACIONALES

20
INGENIERIA EN SISTEMAS COMPUTACIONALES ASIGNATURA: PROGRAMACION ORIENTADA A OBJETOS ALUMNO: JAVIER MARTINEZ MARTINEZ

description

INGENIERIA EN SISTEMAS COMPUTACIONALES. ASIGNATURA: PROGRAMACION ORIENTADA A OBJETOS. ALUMNO: JAVIER MARTINEZ MARTINEZ. CONCEPTO DE FLUJO EN JAVA. - PowerPoint PPT Presentation

Transcript of INGENIERIA EN SISTEMAS COMPUTACIONALES

Page 1: INGENIERIA EN SISTEMAS COMPUTACIONALES

INGENIERIA EN SISTEMAS COMPUTACIONALES

ASIGNATURA: PROGRAMACION ORIENTADA A OBJETOS

ALUMNO: JAVIER MARTINEZ MARTINEZ

Page 2: INGENIERIA EN SISTEMAS COMPUTACIONALES

La información que necesita un programa para su función se obtiene mediante una entrada de datos de un fuente que puede ser de tipos muy variados: teclado, archivo, red, etc.

Cuando el programa genera los resultados como salida de la ejecución puede hacerlo de muy diversas maneras: en archivo, pantalla, impresora, etc. Y puede ser de tipo texto, binario, en imágenes, etc.

CONCEPTO DE FLUJO EN JAVA

Page 3: INGENIERIA EN SISTEMAS COMPUTACIONALES

Esquema para trabajar con los flujos de datos de entrada/

salida.

Page 4: INGENIERIA EN SISTEMAS COMPUTACIONALES

Existen dos tipos de flujos en Java: los que trabajan con bytes y otros que trabajan con caracteres.

Existen clases conversoras que permiten obtener un flujo de bytes a partir de uno de caracteres y viceversa, tanto para la lectura como para escritura.

TIPOS DE FLUJOS

Page 5: INGENIERIA EN SISTEMAS COMPUTACIONALES

Clases mas importantes a tomar en cuenta:

Page 6: INGENIERIA EN SISTEMAS COMPUTACIONALES
Page 7: INGENIERIA EN SISTEMAS COMPUTACIONALES

Existe una clase especial en el paquete java.io de nombre RandomAccesFile para el acceso aleatorio de archivos.

Permite utilizar los archivos en modo lectura y escritura simultáneamente o acceder a datos de forma aleatoria indicando la posición en la que se quiere operar.

Page 8: INGENIERIA EN SISTEMAS COMPUTACIONALES

Un archivo es una secuencia continua de datos, ya sean bytes o caracteres.

LEER Y ESCRIBIR UN ARCHIVO

Page 9: INGENIERIA EN SISTEMAS COMPUTACIONALES

FORMA BASICA DE UTILIZAR UN ARCHIVO PARA ENTRADA Y SALIDA

DE DATOS.

Page 10: INGENIERIA EN SISTEMAS COMPUTACIONALES

Para escribir en un 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 excepción.

Page 11: INGENIERIA EN SISTEMAS COMPUTACIONALES

Para leer el archivo se abre el flujo utilizando la sentencia:

FileReader archivo = new FileReader(“prueba.txt”);

Esta sentencia intenta abrir el archivo. Si existe y se puede abrir la lectura lo abre. Si existe y no lo puede abrir para lectura o si no existe, genera una excepción.

Una vez que se ha terminado de escribir o leer se cierra el flujo con el método close().

Page 12: INGENIERIA EN SISTEMAS COMPUTACIONALES

Son 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.

Se conectan a otros flujos para proporcionar métodos de lectura o escritura mas apropiados al programador.

FILTROS

Page 13: INGENIERIA EN SISTEMAS COMPUTACIONALES

Para lectura de datos del teclado, se dispone de la clase Scanner.

Java proporciona un flujo para la entrada llamado System.in.

Asimismo dispone del flujo System.out para la salida predeterminada.

Ambos son flujos de bytes.

ENTRADA DESDE TECLADO

Page 14: INGENIERIA EN SISTEMAS COMPUTACIONALES

La clase File no sirve para leer ni para escribir en un archivo sino permite, entre otras cosas:

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 contiene. Crear un directorio.

CLASE FILE

Page 15: INGENIERIA EN SISTEMAS COMPUTACIONALES

La clase RandomAccesFile permite abrir un archivo como de lectura, o de lectura y escritura simultáneamente.

Para la lectura del archivo (modo r) dispone de métodos para leer elementos de cualquier tipo primitivo: readInt(), readLong(), readDouble(), readLine().

ARCHIVOS DE ACCESO ALEATORIO

Page 16: INGENIERIA EN SISTEMAS COMPUTACIONALES

Cuando se utiliza en el modo de lectura y escritura (modo “rw”) se pueden utilizar los métodos de escritura para escribir los tipos de datos de forma similar a como se pueden leer con los métodos:

writeInt(), writeLong(), writeDouble(), writeBytes(), etc.

Page 17: INGENIERIA EN SISTEMAS COMPUTACIONALES

Los métodos para el acceso aleatorio son los que permiten acceder a un lugar concreto dentro del archivo y conocer el punto del mismo en el que se va a realizar la operación de lectura y/o escritura:

getFilePosition( ): devuelve la posición actual donde se va a realizar la operación de lectura o escritura. Indica donde se encuentra el cursor del archivo.

Page 18: INGENIERIA EN SISTEMAS COMPUTACIONALES

seek( ): Sitúa la posición de la próxima operación de lectura o escritura en el byte especificado.

lenght( ): Devuelve el tamaño actual del archivo.

Page 19: INGENIERIA EN SISTEMAS COMPUTACIONALES

Para que una clase sea serializable debe de implementar la interfaz Serializable.

Para escribir objetos de una clase se utiliza el flujo ObjectOutputStream.

En la serializacion de un objeto se escriben en el flujo todos los atributos que no sean static ni transient.

LECTURA Y ESCRITURA DE OBJETOS

Page 20: INGENIERIA EN SISTEMAS COMPUTACIONALES

Para escribir un objeto se utiliza el método writeObject().

Para leer un objeto escrito mediante serializacion se utiliza el flujo ObjectInputStream. Una vez cerrado un objeto de este flujo, se puede llamar al método readObject( ) para leer un objeto del flujo.