Nếu bạn làm việc với các phương pháp FileOutputStream
, mỗi lần bạn viết tệp của mình thông qua các phương pháp này, bạn đã bị mất dữ liệu cũ của mình. Có thể ghi tệp mà không làm mất dữ liệu cũ của bạn qua FileOutputStream
không?Làm thế nào để ghi dữ liệu với FileOutputStream mà không làm mất dữ liệu cũ?
61
A
Trả lời
114
Sử dụng các nhà xây dựng mà phải mất một File
và boolean
FileOutputStream(File file, boolean append)
và đặt boolean để true
. Bằng cách đó, dữ liệu bạn viết sẽ được thêm vào cuối tệp, thay vì ghi đè lên những gì đã có ở đó.
18
Sử dụng các constructor cho phụ liệu vào file:
FileOutputStream(File file, boolean append)
Creates a file output stream to write to the file represented by the specified File object.
Vì vậy, để nối thêm vào một tập tin nói "abc.txt" sử dụng
FileOutputStream fos=new FileOutputStream(new File("abc.txt"),true);
Nếu bạn đang tự hỏi làm thế nào bạn có thể làm việc điều này cho chính mình, bạn có thể đã đọc Javadoc. http://docs.oracle.com/javase/7/docs/api/java/io/FileOutputStream.html –
[OutputStreamWriter được sử dụng thay vì FileOutputStream] [1] [1]: http://stackoverflow.com/questions/23320070/appending-a-string-to-an-existing-file-using-outputstreamwriter/23320195?noredirect=1#comment35707473_23320195 – sourabh
@PeterLawrey để tìm hiểu bằng chính chúng ta, người ta thường chỉ cần hỏi internet. Và SO là kết quả đầu tiên trước khi tài liệu java :-) –