• Sábado 21 de Septiembre de 2024, 21:32

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - OptimuZ

Páginas: [1]
1
Java / Guardar ArrayList en un archivo
« en: Jueves 2 de Diciembre de 2010, 10:28 »
Buenos dias, tengo un problema al guardar un arrayList, y es que el caso en netbeans me funciona perfectamente, pero cuando copio el codigo y lo pego en Jdeveloper, me pide que lo convierta a objeto, sino lo hago pe tira un error de compilación. Este de aqui es el codigo de guardar:

Código: Java
  1.     public static boolean grabarLista(ArrayList lista) {
  2.         boolean respuesta = false;
  3.         String mensaje = "";
  4.         String archivo = "lista.txt";
  5.         if (!lista.isEmpty()) {
  6.             try {
  7.                 ObjectOutputStream ficheroSalida = new ObjectOutputStream(new FileOutputStream(new File(archivo)));
  8.                 ficheroSalida.writeObject(lista);
  9.                 ficheroSalida.flush();
  10.                 ficheroSalida.close();
  11.                 mensaje = "tDatos de personas guardados correctamente en " + archivo + ".";
  12.                 System.out.println("tDatos de personas guardados correctamente en " + archivo + ".");
  13.                 respuesta = true;
  14.             } catch (FileNotFoundException fnfe) {
  15.                 mensaje = "tError al grabar personas: El fichero " + archivo + " no existe. ";
  16.                  System.out.println("tError: El fichero " + archivo + " no existe. ");
  17.                  respuesta = false;
  18.             } catch (IOException ioe) {
  19.                 mensaje = "tError: Falló la escritura de las personas en el fichero" + archivo + ". ";
  20.                 System.out.println("tError: Falló la escritura en el fichero" + archivo + ". ");
  21.                 respuesta = false;
  22.             }
  23.         } else {
  24.              mensaje = "tNo hay datos de personas que guardar. La lista está vacía.";
  25.              System.out.println("tNo hay datos que guardar. La lista está vacía. ");
  26.              respuesta = false;
  27.         }
  28.         return respuesta;
  29.         }
  30.  

Jdeveloper me marca que haga conversión en la linea 8:

ficheroSalida.writeObject(lista);

El caso es que en el metodo de carga exactamente igual, este es el metodo de carga:

Código: Java
  1.     public static ArrayList<Alumno> cargar(File fichero){
  2.         ArrayList<Alumno> lista = null;
  3.         try {
  4.             ObjectInputStream ficheroEntrada = new ObjectInputStream(new FileInputStream(fichero));
  5.             lista = (ArrayList) ficheroEntrada.readObject();
  6.             ficheroEntrada.close();
  7.             if (lista == null) {
  8.                 System.out.println("<Lista peliculas vacio>");
  9.             } else {
  10.                 System.out.println("<Lista peliculas llena>");
  11.             }
  12.             return lista;
  13.         } catch (ClassNotFoundException cnfe) {
  14.             return null;
  15.         } catch (FileNotFoundException fnfe) {
  16.             return null;
  17.         } catch (IOException ioe) {
  18.             return null;
  19.         }
  20.     }
  21.  

me dice que tengo que realizar conversión en la linea 5:

lista = (ArrayList) ficheroEntrada.readObject();

Para la lectura del archivo tuve que realizar el casting, por que es el formato con el que lo guarde, el caso es que no funciona en JDeveloper, y en netbeans si, ¿de que otra manera puedo guardar un ArrayList en un archivo y luego cargarlo en un arrayList?

Gracias y un saludo.

Os digo que estos metodos

Páginas: [1]