2016-11-30 2 views
1

Ich habe eine HashMap, die ich als separate Zeilen in eine Textdatei schreiben möchte. Wie gehst du vor? Im SysOut über dem Code zum Schreiben in eine Textdatei drucke ich die Werte so aus, wie ich sie ausdrucken möchte.Wie trennt man eine HashMap auf separate Zeilen mit FileOutputStream?

map.forEach((k,v)-> System.out.println(k+", "+v)); 

    File file = new File(Constants.FILEPATH); 

    FileOutputStream f = new FileOutputStream(file); 
    ObjectOutputStream s = new ObjectOutputStream(f);   
    s.writeObject(map); 
    s.close(); 

Antwort

2

kein ObjectOutputStream Verwenden Sie, verwenden Sie einen PrintWriter:

try (PrintWriter out = new PrintWriter(file)) { 
    map.forEach((k,v) -> out.println(k+", "+v)); 
} 
+0

Das ist richtig. Ein 'ObjectOutputStream' dient zur Serialisierung, nicht zum Schreiben einer von Menschen lesbaren Datei. –

+0

Hat den Job gemacht! Vielen Dank – Nazrod12

Verwandte Themen