Clase Lista. Práctica Programación.

package galia_kalchevska; import java.io.*; import java.util.*; /** * Clase que opera con el archivo binario "clientes.dat" * * @author GALIA * @version 4.0 */ public class Lista extends ArrayList<Object> { /* al extender del ArrayList, necesita una constante de este tipo */ private static final long serialVersionUID = -5522533920789505597L; @SuppressWarnings("unchecked") public static List<Object> LeerFichero(String ruta) throws IOException { /* abrimos stream de lectura del fichero */ FileInputStream input = null; /* abro stream de entrada para leer el objeto */ ObjectInputStream objeto = null; /* el List de clientes */ List<Object> lista_clientes; /* para ver si existe el archivo */ boolean existe = true; /* trabajamos con los streams */ try { input = new FileInputStream(ruta); objeto = new ObjectInputStream(input); } catch (FileNotFoundException e) { /* si el objeto no existe */ existe = false; } catch (Exception e) { System.out.println("Error. No se puede acceder al fichero"); } /* Volcamos el List en el ArrayList */ lista_clientes = new ArrayList<Object>(); /* si el fichero existe */ if (existe == true) { try { /* * el @SuppressWarnings("unchecked") es porque aquí me da * excepciones descontroladas. Leemos el objeto. */ lista_clientes = (List<Object>) objeto.readObject(); /* cierro stream */ objeto.close(); /* cerramos el último stream */ input.close(); /* capturando algunas excepciones */ } catch (IOException ex) { System.out.println("Error al recorrer fichero lectura"); System.exit(0); } catch (ClassNotFoundException ex) { System.out.println("Error al listar fichero"); } } /* devuelve el ArrayList */ return lista_clientes; } public static void EscribirFichero(String ruta, List<Object> lista_clientes) throws IOException { /* lo mismo que arriba, pero con los streams de entrada */ FileOutputStream fichero = null; /* registro almacena cada objeto Cliente */ ObjectOutputStream registro = null; try { fichero = new FileOutputStream(ruta); registro = new ObjectOutputStream(fichero); /* se escribe el objeto */ registro.writeObject(lista_clientes); /* capturando excepciones */ } catch (IOException ex) { System.out.println("Error ficheros escritura. " + ex); } catch (Exception ex) { System.out.println("\"Error. No se puede acceder al fichero\""); } /* cierro los streams */ registro.close(); fichero.close(); } }
Opera con el archivo binario "clientes.dat" resultado de las operaciones de inserción, borrado, actualización...etc.

Be the first to comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.