2016-11-30 2 views
1

У меня есть HashMap, который я бы хотел написать как отдельные строки в текстовом файле. Как вы это делаете? В SysOut над кодом для записи в текстовый файл я печатаю значения так, как я их хотел бы напечатать.Как вы отделяете HashMap на отдельные строки, используя 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(); 

ответ

2

Не используйте ObjectOutputStream, используйте PrintWriter:

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

Это верно. «ObjectOutputStream» предназначен для сериализации, а не для записи человеко-читаемого файла. –

+0

Сделал работу! спасибо – Nazrod12

Смежные вопросы