2016-11-30 16 views
1

我有一个HashMap,我想写为一个文本文件单独的行。你如何去做这件事?在写入文本文件的代码上面的SysOut中,我打印出希望打印它们的值。如何使用FileOutputStream将HashMap分隔到不同的行上?

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

相关问题