SlideShare una empresa de Scribd logo
1 de 12
Definición                                        Clases

•Es el mecanismo utilizado para
realizar operaciones de Entrada
/Salida                                                         Object
•De la misma manera se gestiona la
entrada / salida sobre dispositivos
como:
teclado, pantalla, mouse, impresora,
conexión de red
•Hay dispositivos que ya tienen su
flujo predefinido como la pantalla
                                                 InputSteam              OutputSteam
por ejemplo
•Hay dispositivos que no lo
tienen, como por ejemplo una
impresora
•Las diferentes clases de flujos se
encuentras agrupadas en java.io
                                                  Reader                    Writer

                                Los flujos son
                                     muy
                                 importantes     Random
                                  puesto que                                 …
                                 manejan las     AccesFile
                                  E/S de un
                                  programa
Definición                                                Clases

•Son clases abstractas que                                             Entrada y
representan el flujo de                                                Salida de
                                                                        Datos
entrada/salida de bytes.
•Definen la funcionalidad básica
común de todas las clases de flujo de
bytes
•Dentro de las subclases de
InputSteam tenemos:
FileInputStream, ByteArrayInputStre
am, SequenceInputStream, etc.                                         Flujos
•Dentro de las subclases de
OutputStream están:
FileOutputSream, ObjectOutputStrea                                                 Gestión de
                                                        Excepciones
m, FileOutputStream, etc.                                                          Archivos

                           Investiga las   Puedes encontrar
                           subclases de     más información
                          InputStream y       en el libro de
                           OutputSteam     java2 en la página
                                             361 Capítulo 14
Definición                                                Clases

•Son clases abstractas que                                             Entrada y
representan el flujo de                                                Salida de
                                                                        Datos
entrada/salida de bytes.
•Definen la funcionalidad básica
común de todas las clases de flujo de
bytes
•Dentro de las subclases de
InputStream tenemos:
FileInputStream, ByteArrayInputStre
am, SequenceInputStream, etc.                                         Flujos
•Dentro de las subclases de
OutputStream están:
FileOutputSream, ObjectOutputStrea                                                 Gestión de
                                                        Excepciones
m, FileOutputStream, etc.                                                          Archivos

                           Investiga las   Puedes encontrar
                           subclases de     más información
                          InputStream y       en el libro de
                           OutputSteam     java2 en la página
                                             361 Capítulo 14
Funciones

•Es el tipo de acceso más simple a un
fichero
•Puede almacenar ficheros de
cualquier magnitud.
•Cuando la información se escribe
registro a registro, estos son
                                         FileOutputStream
colocados uno a continuación del
otro
•Se utiliza con ficheros donde se
coloca la información de principio a
final y se lee de la misma forma
•Los ficheros pueden ser escritos o
leidos utilizando FileOutputStream y
FileInputStream
                            Los flujos
                           permiten la
                             salida y
                           entrada de
                              datos      FileInputStream
Funciones                                            Ejemplo

•Permite escribir bytes en un fichero
•Hereda los métodos de la clase               import java.io.*;
OutputStream y trabaja con 3                  public class Escribir_fichero {
constructores:                                public static void main(String[] args) {
1. FileOutputStream(String                         FileOutputStream fs = null;
    nombre);                                  byte[] buffer = new byte [81];
2. FileOutputStream(String                    int nbytes;
    nombre,bool);                             try
3. FileOutputStream(File fichero);            {
• El primero abre un flujo de salida          System.out.println("Escriba el texto que desea
   hacia un fichero especificado              almacenar en el fichero");
• El segundo hace lo mismo, la                nbytes = System.in.read(buffer);
   única diferencia es que puede              fs= new FileOutputStream ("text.txt",true);
   continuar agregando información            fs.write(buffer , 0 ,nbytes);
   una vez que ya exista el fichero           System.out.println(nbytes);
• El tercero lo hace a partir de un           }
   objeto File                                catch(IOException e)
                                              {
                                              System.out.println("Error");
                                              }
                             FileOuputStre    }
                                 am nos       }
                                 permite
                             escribir bytes
                             en un fichero
Ejemplo
            Funciones
                                           import java.io.*;
                                           public class CleerBytes
•Permite leer bytes desde un fichero       {
•Proporciona los constructores             public static void main (String args [])
siguientes:                                {
1. FileInputStream(String nombre)          FileInputStream fe= null;
2. FileInputStream(File fichero)           byte [] buffer = new byte [81];
• El primero abre un flujo de              int nbytes;
   entrada desde el fichero                try
   especificado                            {
• El segundo lo hace a partir de un        fe= new FileInputStream("text.txt");
   archivo File                            nbytes = fe.read(buffer,0,81);
                                           String str = new String(buffer,0,nbytes);
                                           System.out.println(str);
                                           }
                                           catch(IOException e)
                                           {
                          FileInputStrea   System.out.println("Error" +e.toString());
                          m nos permite    }
                           leer bytes de   finally
                            un fichero     {
                                           try
                                           {
                                           if(fe != null)
                                           fe.close();
                                           }
                                           catch(IOException e)
                                           {
                                           System.out.println("Error" + e.toString());
                                           }}}}
Ejemplo

                                             import java.io.*;
             Funciones                       public class Listado
                                             {
                                             public static void main (String args[])
•Permite:                                    {
1. Obtener el tamaño del archivo             System.out.println("Indique nombre de subdirectorio");
2. Obtener el nombre completo, ruta          System.out.println("Trayectoria Absoluta, ej: C:libro");
   incluida                                  String nomdir = Leer.Leer_String();
3. Cambiar nombre                            File arch = new File(nomdir);
4. Eliminar nombre                           if(arch.exists())
5. Saber si es directorio o archivo          {
6. Si es un directorio obtener la lista      if(arch.isDirectory())
   de archivos y directorios que             {
   contiene                                  System.out.println("Contenido de "+ nomdir);
7. Crear un directorio                       String arr [] = arch.list();
                                             for(int j=3; j<arr.length;j++)
                                             {
                                             File otro = new File(nomdir + ""+ arr[j]);
                                             if (otro.isDirectory())
                             La clase File    System.out.println(arr[j]+ "<DIR>");
                            no sirve para    else
                             Leer ni para    System.out.println(arr[j]);
                            escribir en un   }
                               archivo       }
                                             else
                                             System.out.println(nomdir + " no es un directorio");
                                             }
                                             else
                                             System.out.println("No existe");
                                             }
                                             }
Funciones
                                                                 Lectura recomendada

•Se puede utilizar la clase File para
referirse al archivo
•La clase File permite trabajar con
tres tipos de constructores:
1. Public File(String ruta completa)
2. Public File(String Ruta, String
                                                          •Como lectura recomendada te dejamos
    nombre)
                                                          los métodos de la clase File
3. Public File (File ruta, String
                                                          •Así mismo también las clases de Flujos
    nombre)
                                                          de caracteres: Reader, FileWriter,
4. El primero crea una archivo a
                                                          FileReader
    partir de la ruta completa, el
                                                          •También leer sobre Flujos de datos
    segundo a partir de la ruta y el
    nombre, siempre trabajando con
    cadenas; y el tercero lo crea a
    partir de otro y el nombre del
    fichero

                         La clase File no sirve
                          para Leer ni para
                             escribir en un
                               archivo .
                                                  Como tarea, puedes
                           Sin embargo se
                                                   buscar los métodos
                         puede utilizar como
                                                  de la clase File, y leer
                           alternativa en el
                                                   para que sirve cada
                              constructor
                                                     uno de ellos!!!!
DataOutputStream               Las siguientes líneas de código
                                                                                  definen un filtro que permitirá
                                                   Deriva directamente de         escribir haciendo uso de
                                                   OutputStream                   DataOutputStream:
              Funciones
                                                   Permite escribir un flujo de   FileOutputStream fos= new
                                                   salida subordinado, datos      FileOutputStream(datos.dat);
•Sirve para escribir en un fichero                 de cualquier tipo primitivo    DataOutputStream dos= new
datos de tipo primitivo (boolean, byte,                                           DataOutputStream (fos);
double, float, long, int, etc…
•Para esto se utiliza las clases
DataInputStream y                                  DataInputStream                Las siguientes líneas de código
DataOutputStream                                                                  definen un filtro que permitirá
                                                   Es derivada directamente
•Un flujo DataInputStream solo puede                                              leer haciendo uso de
                                                   de InputStream
ser utilizado si el dato se guardó                                                DataInputStream:
haciendo uso de un flujo                           Permite leer un flujo de
DataOutputStream                                   entrada subordinado            FileInputStream fis= new
                                                                                  FileInputStream(datos.dat);
                                                   Solo lee datos ingresados      DataInputStream dis= new
                                                   por DataOutputStream           DataInputStream (fis);



                                                                  Como tarea, puedes
                             Estas clases son
                                                                  buscar los métodos
                           primordiales ya que
                                                                      de la clase
                          su uso es más práctico
                                                                  DataInputStream y
                                                                  DataOutputStream,
                                                                  y realizar ejemplos
Funciones                                        Métodos de acceso Aleatorio


•Sirve para escribir en una
determinada posición en un fichero                                                      Devuelve en bytes la
•Se hace uso de la clase                                             getFilePointer()   posición del archivo
RandomAccesFile
•La clase RandomAccesFile
proporciona dos constructores:
RandomAccesFile(String nombre,
String modo);
•RandomAccesFile(File fichero, String
modo);
•El modo:

                                                                     RAF
1. r: Significa modo lectura
2. rw: Significa modo escritura




                                              seek(long pl)                                 length()



                     Coloca en una posición
                     específica relativa al
                     principio del archivo                                              Devuelve en bytes la
                                                                                        longitud del archivo
Funciones                                                   Ejemplo


• Es la operación de enviar una serie     import java.io.*;
de objetos a un fichero en disco para     import java.lang.*;
hacerlos persistentes recibe el nombre
de Seriación                              public class Serial
•Leer o recuperar el estado su estado     {
del fichero para reconstruirlos en        public static void main(String args[]) throws IOException
memoria recibe el nombre de               {
deseriación                               String nombre, apellido;
•Se hará uso de ObjectOutputStream y      long telefono;
ObjectInputStream                         PrintStream i = System.out;
•Se trata de convertir el estado de un    try
objeto en una secuencia de bytes, por     {
eso son construidos sobre otros flujos    File fichero = new File ("Ficherin.txt");
•Los flujos sobre los que se construirá   FileOutputStream fos = new FileOutputStream(fichero);
será el FileOutputStream y el             ObjectOutputStream oos= new ObjectOutputStream(fos);
FileInputStream                           Persona p= new Persona(“Carlos”,”Van de Velde”,27133413);
                                          oos.writeObject(p);
                                          }
                                          catch(IOException io)
Para poder hacer uso
                                          {
     de una clase
                                          i.println("Se ha cometido un error" +io);
  Serializable debes
                                          }
  implementar una
                                          }
interfaz Serializable,
                                          }
que viene por default
 para identificar que
   tipo de clase es

Más contenido relacionado

La actualidad más candente

Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
still01
 
Requerimiento funcional y no funcional
Requerimiento funcional y no funcional Requerimiento funcional y no funcional
Requerimiento funcional y no funcional
CristobalFicaV
 
Clases y objetos de java
Clases y objetos de javaClases y objetos de java
Clases y objetos de java
innovalabcun
 
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A ObjetosMetodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
hector_h30
 
51036806 proyecto-ejemplo-ingenieria-de-software
51036806 proyecto-ejemplo-ingenieria-de-software51036806 proyecto-ejemplo-ingenieria-de-software
51036806 proyecto-ejemplo-ingenieria-de-software
Miguel Angel Rodriguez
 
Diagramas de colaboracion
Diagramas de colaboracionDiagramas de colaboracion
Diagramas de colaboracion
d-draem
 

La actualidad más candente (20)

12 Curso de POO en java - entrada y salida de datos
12 Curso de POO en java - entrada y salida de datos12 Curso de POO en java - entrada y salida de datos
12 Curso de POO en java - entrada y salida de datos
 
Hilos En Java
Hilos En JavaHilos En Java
Hilos En Java
 
Diagrama de clases
Diagrama de clasesDiagrama de clases
Diagrama de clases
 
Flujo datos
Flujo datosFlujo datos
Flujo datos
 
Programación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismoProgramación 3: clases derivadas y polimorfismo
Programación 3: clases derivadas y polimorfismo
 
Documento arquitectura de software
Documento arquitectura de softwareDocumento arquitectura de software
Documento arquitectura de software
 
Ciclo Vida del Software
Ciclo Vida del SoftwareCiclo Vida del Software
Ciclo Vida del Software
 
Manejo de archivos en JAVA
Manejo de archivos en JAVAManejo de archivos en JAVA
Manejo de archivos en JAVA
 
Cuadro comparativo sgbd
Cuadro comparativo sgbdCuadro comparativo sgbd
Cuadro comparativo sgbd
 
Requerimiento funcional y no funcional
Requerimiento funcional y no funcional Requerimiento funcional y no funcional
Requerimiento funcional y no funcional
 
Modelo 4+1
Modelo 4+1Modelo 4+1
Modelo 4+1
 
Teoria del modelado de objetos otros diagramas actividad despliegue
Teoria del modelado de objetos otros diagramas actividad despliegueTeoria del modelado de objetos otros diagramas actividad despliegue
Teoria del modelado de objetos otros diagramas actividad despliegue
 
Clases y objetos de java
Clases y objetos de javaClases y objetos de java
Clases y objetos de java
 
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A ObjetosMetodologías Para AnáLisis Y DiseñO Orientado A Objetos
Metodologías Para AnáLisis Y DiseñO Orientado A Objetos
 
51036806 proyecto-ejemplo-ingenieria-de-software
51036806 proyecto-ejemplo-ingenieria-de-software51036806 proyecto-ejemplo-ingenieria-de-software
51036806 proyecto-ejemplo-ingenieria-de-software
 
IEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de softwareIEEE 1471-2000: Documento de arquitectura de software
IEEE 1471-2000: Documento de arquitectura de software
 
Diagramas de colaboracion
Diagramas de colaboracionDiagramas de colaboracion
Diagramas de colaboracion
 
2. El proceso del software
2. El proceso del software2. El proceso del software
2. El proceso del software
 
Modelo de datos
Modelo de datosModelo de datos
Modelo de datos
 
6.modelado de los requerimientos escenarios y clases
6.modelado de los requerimientos  escenarios y clases6.modelado de los requerimientos  escenarios y clases
6.modelado de los requerimientos escenarios y clases
 

Similar a Flujos de Entrada y Salida en Java

Manejo de archivos en java
Manejo de archivos en javaManejo de archivos en java
Manejo de archivos en java
Whaleejaa Wha
 
Manejo de archivos en java
Manejo de archivos en javaManejo de archivos en java
Manejo de archivos en java
Whaleejaa Wha
 
Manejo de archivos en java
Manejo de archivos en javaManejo de archivos en java
Manejo de archivos en java
MaiirOn Gaitan
 
Manejo+de+archivos+en+java
Manejo+de+archivos+en+javaManejo+de+archivos+en+java
Manejo+de+archivos+en+java
Whaleejaa Wha
 
Flujos de bytes y cadenas
Flujos de bytes y cadenasFlujos de bytes y cadenas
Flujos de bytes y cadenas
Juan Durango
 
Open And Reading Files
Open And Reading FilesOpen And Reading Files
Open And Reading Files
kayrambal
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOS
Darwin Durand
 
Trabajo sobre archivos en java.. programacion no numerica ii
Trabajo sobre archivos en java.. programacion no numerica iiTrabajo sobre archivos en java.. programacion no numerica ii
Trabajo sobre archivos en java.. programacion no numerica ii
rafaelrojas91
 
Trabajo sobre archivos en java.. programación no numérica II
Trabajo sobre archivos en java.. programación no numérica IITrabajo sobre archivos en java.. programación no numérica II
Trabajo sobre archivos en java.. programación no numérica II
rafaelrojas91
 

Similar a Flujos de Entrada y Salida en Java (20)

Serializacion
SerializacionSerializacion
Serializacion
 
Metodos de entrada y Salida
Metodos de entrada y SalidaMetodos de entrada y Salida
Metodos de entrada y Salida
 
Manejo de archivos en java
Manejo de archivos en javaManejo de archivos en java
Manejo de archivos en java
 
Manejo de archivos en java
Manejo de archivos en javaManejo de archivos en java
Manejo de archivos en java
 
Manejo de archivos en java
Manejo de archivos en javaManejo de archivos en java
Manejo de archivos en java
 
Manejo+de+archivos+en+java
Manejo+de+archivos+en+javaManejo+de+archivos+en+java
Manejo+de+archivos+en+java
 
Flujos de bytes y cadenas
Flujos de bytes y cadenasFlujos de bytes y cadenas
Flujos de bytes y cadenas
 
Java stream
Java streamJava stream
Java stream
 
S2-EDD-1.2 Paso de estructuras y punteros a funciones, recursividad
S2-EDD-1.2 Paso de estructuras y punteros a funciones, recursividadS2-EDD-1.2 Paso de estructuras y punteros a funciones, recursividad
S2-EDD-1.2 Paso de estructuras y punteros a funciones, recursividad
 
Programacion no numerica2
Programacion no numerica2Programacion no numerica2
Programacion no numerica2
 
Open And Reading Files
Open And Reading FilesOpen And Reading Files
Open And Reading Files
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOS
 
Java io
Java ioJava io
Java io
 
13-Unidad 4: Manejo de archivos y seguimiento del proyecto
13-Unidad 4: Manejo de archivos y seguimiento del proyecto13-Unidad 4: Manejo de archivos y seguimiento del proyecto
13-Unidad 4: Manejo de archivos y seguimiento del proyecto
 
ARCHIVOS
ARCHIVOS ARCHIVOS
ARCHIVOS
 
Trabajo sobre archivos en java.. programacion no numerica ii
Trabajo sobre archivos en java.. programacion no numerica iiTrabajo sobre archivos en java.. programacion no numerica ii
Trabajo sobre archivos en java.. programacion no numerica ii
 
Trabajo sobre archivos en java.. programación no numérica II
Trabajo sobre archivos en java.. programación no numérica IITrabajo sobre archivos en java.. programación no numérica II
Trabajo sobre archivos en java.. programación no numérica II
 
Entrada y Salida de datos en Java
Entrada y Salida de datos en JavaEntrada y Salida de datos en Java
Entrada y Salida de datos en Java
 
Utilización de la clase math
Utilización de la clase mathUtilización de la clase math
Utilización de la clase math
 
Java
JavaJava
Java
 

Más de Ingeniería Nica

Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Ingeniería Nica
 
Información Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Admón de Bases de Datos I era EdiciónInformación Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Admón de Bases de Datos I era Edición
Ingeniería Nica
 
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Información Diplomado en Administración de Bases de Datos con Mysql primera E...Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Ingeniería Nica
 

Más de Ingeniería Nica (20)

Programa de curso de formulación y evaluación de proyectos informáticos
Programa de curso de formulación y evaluación de proyectos informáticosPrograma de curso de formulación y evaluación de proyectos informáticos
Programa de curso de formulación y evaluación de proyectos informáticos
 
Sesiones en PHP
Sesiones en PHPSesiones en PHP
Sesiones en PHP
 
Programa de desarrollo y administración de bases de datos con SQL Server 2012...
Programa de desarrollo y administración de bases de datos con SQL Server 2012...Programa de desarrollo y administración de bases de datos con SQL Server 2012...
Programa de desarrollo y administración de bases de datos con SQL Server 2012...
 
Programa de Curso on line de Android!
Programa de Curso on line de Android!Programa de Curso on line de Android!
Programa de Curso on line de Android!
 
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
 
Curriculum vitae 2012 c arlos van de velde
Curriculum vitae 2012 c arlos van de veldeCurriculum vitae 2012 c arlos van de velde
Curriculum vitae 2012 c arlos van de velde
 
Programa de curso excel 2010 financiero
Programa de curso excel 2010 financieroPrograma de curso excel 2010 financiero
Programa de curso excel 2010 financiero
 
Vectores o arreglos con PHP
Vectores o arreglos con PHP Vectores o arreglos con PHP
Vectores o arreglos con PHP
 
Programa de curso de project 2010
Programa de curso de  project 2010Programa de curso de  project 2010
Programa de curso de project 2010
 
La necesidad de un sistema automatizado de vinculación Universidad – Empresa
La necesidad de un sistema automatizado de vinculación Universidad – Empresa La necesidad de un sistema automatizado de vinculación Universidad – Empresa
La necesidad de un sistema automatizado de vinculación Universidad – Empresa
 
Curso de Desarrollo de sitios web dinámicos con PHP y MySQL
Curso de Desarrollo de sitios web dinámicos con PHP y MySQLCurso de Desarrollo de sitios web dinámicos con PHP y MySQL
Curso de Desarrollo de sitios web dinámicos con PHP y MySQL
 
Programa de curso excel 2010
Programa de curso excel 2010Programa de curso excel 2010
Programa de curso excel 2010
 
Manual de usuario de sistema de vinculación Universidad Empresa
Manual de usuario de sistema de vinculación Universidad EmpresaManual de usuario de sistema de vinculación Universidad Empresa
Manual de usuario de sistema de vinculación Universidad Empresa
 
Programa de curso de desarrollo web con html5
Programa de curso de desarrollo web con html5Programa de curso de desarrollo web con html5
Programa de curso de desarrollo web con html5
 
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
 
Brochure IN
Brochure INBrochure IN
Brochure IN
 
Curso SQL 2012
Curso SQL 2012Curso SQL 2012
Curso SQL 2012
 
Resultado concurso HTML5 OCT2012
Resultado concurso HTML5 OCT2012Resultado concurso HTML5 OCT2012
Resultado concurso HTML5 OCT2012
 
Información Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Admón de Bases de Datos I era EdiciónInformación Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Admón de Bases de Datos I era Edición
 
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Información Diplomado en Administración de Bases de Datos con Mysql primera E...Información Diplomado en Administración de Bases de Datos con Mysql primera E...
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
 

Último

RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
amelia poma
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
EduardoJosVargasCama1
 

Último (20)

CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
Usos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicasUsos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicas
 
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfFICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
 
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).pptPINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
PINTURA DEL RENACIMIENTO EN ESPAÑA (SIGLO XVI).ppt
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
PLAN LECTOR 2024 integrado nivel inicial-miercoles 10.pptx
PLAN LECTOR 2024  integrado nivel inicial-miercoles 10.pptxPLAN LECTOR 2024  integrado nivel inicial-miercoles 10.pptx
PLAN LECTOR 2024 integrado nivel inicial-miercoles 10.pptx
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
 

Flujos de Entrada y Salida en Java

  • 1.
  • 2. Definición Clases •Es el mecanismo utilizado para realizar operaciones de Entrada /Salida Object •De la misma manera se gestiona la entrada / salida sobre dispositivos como: teclado, pantalla, mouse, impresora, conexión de red •Hay dispositivos que ya tienen su flujo predefinido como la pantalla InputSteam OutputSteam por ejemplo •Hay dispositivos que no lo tienen, como por ejemplo una impresora •Las diferentes clases de flujos se encuentras agrupadas en java.io Reader Writer Los flujos son muy importantes Random puesto que … manejan las AccesFile E/S de un programa
  • 3. Definición Clases •Son clases abstractas que Entrada y representan el flujo de Salida de Datos entrada/salida de bytes. •Definen la funcionalidad básica común de todas las clases de flujo de bytes •Dentro de las subclases de InputSteam tenemos: FileInputStream, ByteArrayInputStre am, SequenceInputStream, etc. Flujos •Dentro de las subclases de OutputStream están: FileOutputSream, ObjectOutputStrea Gestión de Excepciones m, FileOutputStream, etc. Archivos Investiga las Puedes encontrar subclases de más información InputStream y en el libro de OutputSteam java2 en la página 361 Capítulo 14
  • 4. Definición Clases •Son clases abstractas que Entrada y representan el flujo de Salida de Datos entrada/salida de bytes. •Definen la funcionalidad básica común de todas las clases de flujo de bytes •Dentro de las subclases de InputStream tenemos: FileInputStream, ByteArrayInputStre am, SequenceInputStream, etc. Flujos •Dentro de las subclases de OutputStream están: FileOutputSream, ObjectOutputStrea Gestión de Excepciones m, FileOutputStream, etc. Archivos Investiga las Puedes encontrar subclases de más información InputStream y en el libro de OutputSteam java2 en la página 361 Capítulo 14
  • 5. Funciones •Es el tipo de acceso más simple a un fichero •Puede almacenar ficheros de cualquier magnitud. •Cuando la información se escribe registro a registro, estos son FileOutputStream colocados uno a continuación del otro •Se utiliza con ficheros donde se coloca la información de principio a final y se lee de la misma forma •Los ficheros pueden ser escritos o leidos utilizando FileOutputStream y FileInputStream Los flujos permiten la salida y entrada de datos FileInputStream
  • 6. Funciones Ejemplo •Permite escribir bytes en un fichero •Hereda los métodos de la clase import java.io.*; OutputStream y trabaja con 3 public class Escribir_fichero { constructores: public static void main(String[] args) { 1. FileOutputStream(String FileOutputStream fs = null; nombre); byte[] buffer = new byte [81]; 2. FileOutputStream(String int nbytes; nombre,bool); try 3. FileOutputStream(File fichero); { • El primero abre un flujo de salida System.out.println("Escriba el texto que desea hacia un fichero especificado almacenar en el fichero"); • El segundo hace lo mismo, la nbytes = System.in.read(buffer); única diferencia es que puede fs= new FileOutputStream ("text.txt",true); continuar agregando información fs.write(buffer , 0 ,nbytes); una vez que ya exista el fichero System.out.println(nbytes); • El tercero lo hace a partir de un } objeto File catch(IOException e) { System.out.println("Error"); } FileOuputStre } am nos } permite escribir bytes en un fichero
  • 7. Ejemplo Funciones import java.io.*; public class CleerBytes •Permite leer bytes desde un fichero { •Proporciona los constructores public static void main (String args []) siguientes: { 1. FileInputStream(String nombre) FileInputStream fe= null; 2. FileInputStream(File fichero) byte [] buffer = new byte [81]; • El primero abre un flujo de int nbytes; entrada desde el fichero try especificado { • El segundo lo hace a partir de un fe= new FileInputStream("text.txt"); archivo File nbytes = fe.read(buffer,0,81); String str = new String(buffer,0,nbytes); System.out.println(str); } catch(IOException e) { FileInputStrea System.out.println("Error" +e.toString()); m nos permite } leer bytes de finally un fichero { try { if(fe != null) fe.close(); } catch(IOException e) { System.out.println("Error" + e.toString()); }}}}
  • 8. Ejemplo import java.io.*; Funciones public class Listado { public static void main (String args[]) •Permite: { 1. Obtener el tamaño del archivo System.out.println("Indique nombre de subdirectorio"); 2. Obtener el nombre completo, ruta System.out.println("Trayectoria Absoluta, ej: C:libro"); incluida String nomdir = Leer.Leer_String(); 3. Cambiar nombre File arch = new File(nomdir); 4. Eliminar nombre if(arch.exists()) 5. Saber si es directorio o archivo { 6. Si es un directorio obtener la lista if(arch.isDirectory()) de archivos y directorios que { contiene System.out.println("Contenido de "+ nomdir); 7. Crear un directorio String arr [] = arch.list(); for(int j=3; j<arr.length;j++) { File otro = new File(nomdir + ""+ arr[j]); if (otro.isDirectory()) La clase File System.out.println(arr[j]+ "<DIR>"); no sirve para else Leer ni para System.out.println(arr[j]); escribir en un } archivo } else System.out.println(nomdir + " no es un directorio"); } else System.out.println("No existe"); } }
  • 9. Funciones Lectura recomendada •Se puede utilizar la clase File para referirse al archivo •La clase File permite trabajar con tres tipos de constructores: 1. Public File(String ruta completa) 2. Public File(String Ruta, String •Como lectura recomendada te dejamos nombre) los métodos de la clase File 3. Public File (File ruta, String •Así mismo también las clases de Flujos nombre) de caracteres: Reader, FileWriter, 4. El primero crea una archivo a FileReader partir de la ruta completa, el •También leer sobre Flujos de datos segundo a partir de la ruta y el nombre, siempre trabajando con cadenas; y el tercero lo crea a partir de otro y el nombre del fichero La clase File no sirve para Leer ni para escribir en un archivo . Como tarea, puedes Sin embargo se buscar los métodos puede utilizar como de la clase File, y leer alternativa en el para que sirve cada constructor uno de ellos!!!!
  • 10. DataOutputStream Las siguientes líneas de código definen un filtro que permitirá Deriva directamente de escribir haciendo uso de OutputStream DataOutputStream: Funciones Permite escribir un flujo de FileOutputStream fos= new salida subordinado, datos FileOutputStream(datos.dat); •Sirve para escribir en un fichero de cualquier tipo primitivo DataOutputStream dos= new datos de tipo primitivo (boolean, byte, DataOutputStream (fos); double, float, long, int, etc… •Para esto se utiliza las clases DataInputStream y DataInputStream Las siguientes líneas de código DataOutputStream definen un filtro que permitirá Es derivada directamente •Un flujo DataInputStream solo puede leer haciendo uso de de InputStream ser utilizado si el dato se guardó DataInputStream: haciendo uso de un flujo Permite leer un flujo de DataOutputStream entrada subordinado FileInputStream fis= new FileInputStream(datos.dat); Solo lee datos ingresados DataInputStream dis= new por DataOutputStream DataInputStream (fis); Como tarea, puedes Estas clases son buscar los métodos primordiales ya que de la clase su uso es más práctico DataInputStream y DataOutputStream, y realizar ejemplos
  • 11. Funciones Métodos de acceso Aleatorio •Sirve para escribir en una determinada posición en un fichero Devuelve en bytes la •Se hace uso de la clase getFilePointer() posición del archivo RandomAccesFile •La clase RandomAccesFile proporciona dos constructores: RandomAccesFile(String nombre, String modo); •RandomAccesFile(File fichero, String modo); •El modo: RAF 1. r: Significa modo lectura 2. rw: Significa modo escritura seek(long pl) length() Coloca en una posición específica relativa al principio del archivo Devuelve en bytes la longitud del archivo
  • 12. Funciones Ejemplo • Es la operación de enviar una serie import java.io.*; de objetos a un fichero en disco para import java.lang.*; hacerlos persistentes recibe el nombre de Seriación public class Serial •Leer o recuperar el estado su estado { del fichero para reconstruirlos en public static void main(String args[]) throws IOException memoria recibe el nombre de { deseriación String nombre, apellido; •Se hará uso de ObjectOutputStream y long telefono; ObjectInputStream PrintStream i = System.out; •Se trata de convertir el estado de un try objeto en una secuencia de bytes, por { eso son construidos sobre otros flujos File fichero = new File ("Ficherin.txt"); •Los flujos sobre los que se construirá FileOutputStream fos = new FileOutputStream(fichero); será el FileOutputStream y el ObjectOutputStream oos= new ObjectOutputStream(fos); FileInputStream Persona p= new Persona(“Carlos”,”Van de Velde”,27133413); oos.writeObject(p); } catch(IOException io) Para poder hacer uso { de una clase i.println("Se ha cometido un error" +io); Serializable debes } implementar una } interfaz Serializable, } que viene por default para identificar que tipo de clase es