如何使用FileOutputStream写入数据而不丢失旧数据?


86

如果使用FileOutputStream方法,则每次通过此方法写入文件时,都会丢失旧数据。是否可以通过写入文件而不会丢失旧数据FileOutputStream


1
如果您想知道如何自己解决这个问题,可以阅读Javadoc。docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html
Peter Lawrey 2011年

[OutputStreamWriter代替FileOutputStream中] [1] [1]:stackoverflow.com/questions/23320070/...
sourabh

1
@PeterLawrey可以自己学习,通常只需问一下互联网。SO是Java doc之前的第一个结果:-)
Juh_

Answers:


150

使用采用File和的构造函数boolean

FileOutputStream(File file, boolean append) 

并将布尔值设置为true。这样,您写入的数据将被附加到文件的末尾,而不是覆盖已经存在的数据。


20

使用构造函数将材料附加到文件:

FileOutputStream(File file, boolean append)
Creates a file output stream to write to the file represented by the specified File object.

所以要附加到文件上说“ abc.txt”使用

FileOutputStream fos=new FileOutputStream(new File("abc.txt"),true);
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.