Bienvenidos a un nuevo curso. Ahora estoy en el ciclo de grado superior: Desarrollo de aplicaciones multiplataforma. Y voy a ser parte del experimento de la formación dual. Estaré haciendo practicas durante un año, y a la vez finalizando la formación.

Deseadme suerte.

sábado, 14 de enero de 2017

Repasando AD -> Streams

0

Un stream representa un flujo de información, una secuencia ordenada de datos procedente de una fuente o dirigida a un destino.
Un stream es una secuencia ordenada de datos. Estos datos pueden ser caracteres (caracteres Unicode de 16 bits) o bytes (8 bits).

Ejemplo 1 Lectura de byte

import java.io.*;

public class EjemploLecturaByte{
     public static void main(String[] args){
          //FileInputStream lee archivos
          FileInputStream fis = null;
          int aux = 0;
          try{
                //Se define el archivo a leer
                fis = new FileInputStream("C:\\eclipse\\readme\\readme_eclipse.html");
                //read lee el siguiente flujo de bytes y cuando alcanza el final devuelve -1
                while((aux = fis.read()) != -1)
                     System.out.println(aux + " - " + (char)aux);
          }
          catch(FileNotFoundException e){ //control de errores
               //printStackTrace te dice el tipo de excepción y donde sucedio.
                e.printStackTrace();
          }
          catch(IOException e){ //control de errores
                e.printStackTrace();
          }
         // conjunto de instrucciones necesarias tanto si se produce error o excepción 
          // como si no y que por tanto se ejecuta siempre.
          finally{
                try{
                     //cerrar el archivo
                     fis.close();
                }
                catch(IOException e){ //control de errores
                     e.printStackTrace();
                }
          }
     }
}

Ejemplo 2 Escritura de byte

import java.io.*;

public class EjemploEscrituraByte{
     public static void main(String[] args){
          //FileOutputStream escribe en archivos
          FileOutputStream fos = null;
          int aux = 0;
          try{
                //Se define el archivo a escribir
                fos = new FileOutputStream("D:\\Prueba.txt");
                //Escribe su contenido en el archivo
                fos.write(67); fos.write(76); fos.write(67); fos.write(32);
          }
          catch(FileNotFoundException e){ // control de errores
                e.printStackTrace();
          }
          catch(IOException e){ // control de errores
                e.printStackTrace();
          }
          finally{ //hacer siempre
                try{
                     //cierra el archivo
                     fos.close(); 
                }
                catch(IOException e){ // control de errores
                     e.printStackTrace();
               }
          }
     }
}

Ejemplo 3 Flujo con array

import java.io.*;

public class EjemploFlujoArray{
     //se trabaja con las excepciones de forma automatica
     public static void main(String[] args) throws IOException{
          //array de bytes
          byte[] byteArr1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
          //ByteArrayInputStream lee un array de bytes
          //Se define el array de bytes a leer
          ByteArrayInputStream flujoArrByte1 = new ByteArrayInputStream(byteArr1);
          //available devuelve el numero de bytes
          while(flujoArrByte1.available() != 0){
               //lee el byte
                byte leido = (byte) flujoArrByte1.read();
                System.out.println(leido);
          }
          //cierra el array de bytes
          flujoArrByte1.close();
     }
}

Ejemplo 4 Streams sobre ficheros

import java.io.*;

public class Copia{
     public static void main(String[] args){
          FileInputStream origen = null;
          FileOutputStream destino = null;
         
          try{
                origen = FileInputStream(args[0]);
                // true escribe sobe el fichero sin borrar lo anterior.
                destino = new FileOutputStream(args[1], true);
                // lee el siguiente flujo de bytes y lo devuelve como un entero
                int i = origen.read();
                // cuando read termina el flujo de bytes devuelve -1
                while(i != -1){ 
                     //escribe el byte leido
                     destino.write(i);
                     //lee el siguiente byte
                     i = origen.read();
                }
                origen.close();
                destino.close();
          }
          catch(IOException e){ // control de errores
                System.out.println("Error de ficheros");
          }
     }
}

0 comentarios:

Publicar un comentario

Etiquetas actuales

BD (67) DEF (64) PROG (64) SQL (44) Java (29) PRACTICAS (20) php (18) DI (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) HTML (13) SGE (12) ERP (9) CONSULTAS (8) css (8) Linux (5) XML (5) Android (4) PDM (4) C (3) NetBeans (3) PSP (3) SMARTY (3) comandos (3) HOOK (2) POST (2) XSD (2) cURL (2) JS (1) MEDIA-QUERYS (1) PDO (1) RESPONSIVE (1) TPL (1) TRADUCCIÓN (1) app_inventor (1)

Todas las etiquetas

EJER (78) BD (67) DEF (64) PROG (64) SQL (44) c# (40) Programación (39) Ficheros (36) Java (29) bases de datos (21) PRACTICAS (20) lenguajes de marcas (19) AD (18) Entorno de desarrollo (18) php (18) PROCEDIMIENTOS (17) DI (16) FORM (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) lenguaje C (16) E/R (14) HTML (13) SGE (12) Sistemas informáticos (10) ERP (9) CONSULTAS (8) TRANSACCIONES (8) TRIGGER (8) VISUAL BASIC (8) css (8) FUNCIONES (7) html5 (6) Ada (5) EXAMEN (5) Linux (5) XML (5) estructuras (5) Android (4) DISEÑO (4) INTERFAZ (4) LOG (4) OpenBravo (4) PDM (4) ACTUALIZAR (3) C (3) DIAGRAMA (3) Directorios (3) NEW (3) NOR (3) NetBeans (3) OLD (3) PSP (3) SMARTY (3) comandos (3) css3 (3) AISLAMIENTOS (2) C++ (2) CONTROLERRORES (2) ELIMINAR (2) HOOK (2) INSERTAR (2) INST (2) MULTITABLA (2) POST (2) RECURSIVIDAD (2) SUBCONSULTAS (2) VISTAS (2) XSD (2) cURL (2) punteros (2) AJENA (1) BLOQUEOS (1) Byte (1) CREACION (1) CRM (1) Configuración (1) Controles (1) Datos (1) GOTFOCUS (1) IMAGENES (1) INDICES (1) JS (1) Lenght (1) MEDIA-QUERYS (1) Mingw (1) MonoDeveloped (1) OPTIMISTA (1) PDO (1) PESIMISTA (1) RESPONSIVE (1) SPEAK (1) Scanner (1) Serializacion (1) Streams (1) System (1) TPL (1) TRADUCCIÓN (1) USUARIOS (1) UseSystemPasswordChar (1) app_inventor (1) char (1) examenes (1) libreoffice (1) make (1) redes (1)