A
Auron
Gast
Hi erstmal,
Ich habe mal wieder ein Problem.
Ich versuche eine LinkedList in eine Datei zu schreiben um diese dann zum nächsten start des Programms wieder einzulesen.
Das merkwürdige ist das ich schon Programme geschrieben habe, die die writeObject und readObject Methoden verwenden, aber hier kriege ich immer eine IOException.
Hier mal der notwendige Code:
List ist eine Globale LinkedList<Elem> und die methode save wird von einem Button aufgerufen.
Die Methode load soll immer am start des Programms aufgerufen werden und wenn eine Database.txt existiert ersetzt die beim vorrigen Programmlauf gespeicherte Liste die jetzige.
Das schreiben funktioniert und die Datei ist da und steht auch was drin aber beim laden gibt es immer eine IOException. Ich bin mir sicher das das Casten zur LinkedList funktioniert also kann man die Warnung die durch das Casten erzeugt wird ignorieren.
Würd mich freuen wenn jemand mir den Fehler erklärt ich glaube ich habe ein Brett vorm Kopf.
Ich habe mal wieder ein Problem.
Ich versuche eine LinkedList in eine Datei zu schreiben um diese dann zum nächsten start des Programms wieder einzulesen.
Das merkwürdige ist das ich schon Programme geschrieben habe, die die writeObject und readObject Methoden verwenden, aber hier kriege ich immer eine IOException.
Hier mal der notwendige Code:
Code:
void save()
{
ObjectOutputStream oos = null;
FileOutputStream fos = null;
try
{
fos = new FileOutputStream("Database.txt");
oos = new ObjectOutputStream(fos);
oos.writeObject(list);
oos.close();
fos.close();
}
catch(IOException e){}
}
void load()
{
ObjectInputStream ois = null;
FileInputStream fis = null;
LinkedList<Elem> tmplist = null;
try
{
fis = new FileInputStream("Database.txt");
ois = new ObjectInputStream(fis);
tmplist = (LinkedList<Elem>)(ois.readObject());
ois.close();
fis.close();
}
catch(IOException e){System.out.println("IO Fehler");}
catch(Exception e){System.out.println("Fehler irgendwo");}
list = tmplist;
}
Die Methode load soll immer am start des Programms aufgerufen werden und wenn eine Database.txt existiert ersetzt die beim vorrigen Programmlauf gespeicherte Liste die jetzige.
Das schreiben funktioniert und die Datei ist da und steht auch was drin aber beim laden gibt es immer eine IOException. Ich bin mir sicher das das Casten zur LinkedList funktioniert also kann man die Warnung die durch das Casten erzeugt wird ignorieren.
Würd mich freuen wenn jemand mir den Fehler erklärt ich glaube ich habe ein Brett vorm Kopf.