Zitat
So einmal im Monat mit den Tieren im Fluß waschen wenn es "dein Herr" befiehlt Ragna?
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »KoH_Citrus« (19.12.2010, 20:20)
Zitat
Original von KoH_Citrus
http://openbook.galileocomputing.de/java…faa3f8cf6ab830a
vielleicht die keys der textdatei zu erst in eine liste einlesen.
und dann mit der hashmap vergleichen und eine neue textdatei rausschreiben.
Zitat
"Ich möchte einfach eine hashmap in eine datei speichern und schauen, dass in der datei kein key zwei mal vorkommt, sondern dass die values dann einfach in die selbe zeile noch hinten dran geschrieben werden."
![]() |
Quellcode |
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 |
Vector<String> strings; // die drei Werte StringBuffer newFileContent = new StringBuffer(); // Inhalt der Ausgabedatei File txtFile = new File("blablubb.txt"); // Eingabedatei BufferedReader br = new BufferedReader(new FileReader(txtFile)); String line = br.readLine(); // erste Zeile lesen while (line != null) // Datei noch nicht zu Ende { newFileContent.add(line); if (map.get(line) != null) // Schlüssel aus Datei auch in Map => Werte hinzufügen { strings = map.get(line); newFileContent.add(";" + strings.get(0) + ";" + strings.get(1) + ";" + strings.get(2)); map.remove(line); // Schlüssel war schon eingetragen => muss nicht mehr hinten angefügt werden } newFileContent.add("\n"); // Zeilenumbruch line = br.readLine(); // nächste Zeile } Set<String> keys = map.keySet(); // verbleibende Schlüssel Iterator<String> it = keys.iterator(); String key; // aktueller Schlüssel while (it.hasNext()) // noch Schlüssel übrig { key = it.next(); strings = map.get(key); newFileContent.add(key + ";" + strings.get(0) + ";" + strings.get(1) + ";" + strings.get(2) + "\n"); } FileWriter fw = new FileWriter(new File("outputFile.txt")); fw.write(newFileContent.toString()); fw.flush(); // sofort schreiben (brauchen wir hier nicht unbedingt, sollte man sich aber angewöhnen) fw.close(); // Datei freigeben (brauchen wir auch nicht, aber auch zum Angewöhnen) |