Java - Guardar ArrayList en un fichero .dat

   
Vista:

Guardar ArrayList en un fichero .dat

Publicado por Juan (16 intervenciones) el 15/05/2017 04:10:39
Buenas , tengo un pequeño problema quiero almacenar un ArrayList que he creado en un archivo .dat , les muestro mi código , que al ejecutarlo me salta el siguiente error:


Error: Fallo en la escritura en el fichero.

El codigo es el siguiente:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
private static void guardarArrayList(ArrayList<Paciente> pacientes) {
 
    String fichero = "pacientes.dat";
 
    try {
        ObjectOutputStream ficheroSalida = new ObjectOutputStream
                (new FileOutputStream(fichero));
        ficheroSalida.writeObject(pacientes);
        ficheroSalida.flush();
        ficheroSalida.close();
        System.out.println("Pacientes guardados correctamente...");
 
        } catch (FileNotFoundException fnfe) {
            System.out.println("Error: El fichero no existe. ");
        } catch (IOException ioe) {
            System.out.println("Error: Fallo en la escritura en el fichero. ");
        }
 
    }


Necesito ayuda por favor , espero que me solucionen el problema , muchas gracias de antemano!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Guardar ArrayList en un fichero .dat

Publicado por preguntas (67 intervenciones) el 15/05/2017 05:58:17
Puede que tu error se deba a que no implementaste la interfaz Serializable en tu clase:

Revise tu código y trabaja correctamente.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
package files;
 
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import java.util.logging.Level;
import java.util.logging.Logger;
 
public class Fichero implements Serializable {
 
    private static void guardarArrayList(ArrayList<Object> pacientes) {
 
        String fichero = "pacientes.dat";
 
        try {
            ObjectOutputStream ficheroSalida = new ObjectOutputStream(new FileOutputStream(fichero));
            ficheroSalida.writeObject(pacientes);
            ficheroSalida.flush();
            ficheroSalida.close();
            System.out.println("Pacientes guardados correctamente...");
 
        } catch (FileNotFoundException fnfe) {
            System.out.println("Error: El fichero no existe. ");
        } catch (IOException ioe) {
            System.out.println("Error: Fallo en la escritura en el fichero. ");
        }
 
    }
 
    public static void main(String[] args) {
        ArrayList<Object> a = new ArrayList<>();
        a.add("hola");
        a.add("mundo");
        a.add("java");
        Fichero.guardarArrayList(a);
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad