오래된 데이터를 잃지 않고 FileOutputStream으로 데이터를 쓰는 방법은 무엇입니까?


86

FileOutputStream메서드로 작업하는 경우이 메서드를 통해 파일을 작성할 때마다 이전 데이터가 손실됩니다. 을 통해 이전 데이터를 잃지 않고 파일을 쓸 수 FileOutputStream있습니까?


1
이 문제를 어떻게 해결할 수 있었는지 궁금하다면 Javadoc을 읽어 보셨을 것입니다. docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html
Peter Lawrey

[OutputStreamWriter가 FileOutputStream 대신 사용됨] [1] [1] : stackoverflow.com/questions/23320070/…
sourabh

1
@PeterLawrey는 스스로 배우기 위해 보통 인터넷에 물어 봅니다. 그리고 SO는 자바 문서 이전의 첫 번째 결과입니다 :-)
Juh_

답변:


150

a File와 a 를 취하는 생성자를 사용하십시오 .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);
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.