Hallo,
ich habe folgendes Problem ich möchte gerne eine Textdatei vom User persistent in mein Java Programm Importieren. Kurz worum es genau geht es ist eine .txt Datei die folgendermaßen aufgebau ist:
Peter Muster 123456789
Max Muster 541566445
Daten sind in fester Breiten eingeteilt. Das ist aber nicht direkt mein Problem.
Ich hatte folgende Idee, ich wollte die Daten in eine mehr dimensionale hashMap speichern
(Map<String, List>) und dieses Object dann per ObjectOutputStream persistent speichern.
Sowei so gut das läuft auch alles ich kann die Daten auch mit ObjectInputStream wieder herrausholen
Das funktioniert alles soweit aber die Datenmenge ist so groß das das Laden des Objektes ca. 25 Sekunden braucht und ich jetzt nach einer besseren und schnelleren Methode suche?
VIelen Dabk für eure Hilfe schon mal im Vorraus und einen schönen Abend noch
ich habe folgendes Problem ich möchte gerne eine Textdatei vom User persistent in mein Java Programm Importieren. Kurz worum es genau geht es ist eine .txt Datei die folgendermaßen aufgebau ist:
Peter Muster 123456789
Max Muster 541566445
Daten sind in fester Breiten eingeteilt. Das ist aber nicht direkt mein Problem.
Ich hatte folgende Idee, ich wollte die Daten in eine mehr dimensionale hashMap speichern
(Map<String, List>) und dieses Object dann per ObjectOutputStream persistent speichern.
Java:
public static void save(String fileName, Object toSave) {
try {
FileOutputStream file = new FileOutputStream(fileName);
try (ObjectOutputStream o = new ObjectOutputStream(file)) {
o.writeObject(toSave);
}
} catch (IOException ex) {
Logger.getLogger(Savedata.class.getName()).log(Level.SEVERE, null, ex);
}
Sowei so gut das läuft auch alles ich kann die Daten auch mit ObjectInputStream wieder herrausholen
Java:
public static Map<String, List> open(String fileName) {
Map<String, List> m = new HashMap<>();
try {
FileInputStream i = new FileInputStream(fileName);
ObjectInputStream o = new ObjectInputStream(i);
m = (Map) o.readObject();
// System.out.println(s);
} catch (IOException ex) {
Logger.getLogger(Opendata.class.getName()).log(Level.SEVERE, null, ex);
} catch (ClassNotFoundException ex) {
System.out.println(ex);
}
return m;
Das funktioniert alles soweit aber die Datenmenge ist so groß das das Laden des Objektes ca. 25 Sekunden braucht und ich jetzt nach einer besseren und schnelleren Methode suche?
VIelen Dabk für eure Hilfe schon mal im Vorraus und einen schönen Abend noch
Zuletzt bearbeitet von einem Moderator: