Home >Java >javaTutorial >How can FileOutputStream be used to append data to a file without overwriting existing content?
Preserving Data When Writing with FileOutputStream
When using FileOutputStream methods, it's common to encounter the issue of data loss if you overwrite existing files. To resolve this, the FileOutputStream constructor offers a solution that allows you to append data without erasing the original contents.
The constructor takes two arguments: a File object and a boolean. By setting the boolean parameter to true, you can control the write behavior. Here's the enhanced constructor:
<code class="java">FileOutputStream(File file, boolean append) </code>
When the boolean is set to true, the data you write through the FileOutputStream will be appended to the end of the file instead of replacing the existing content. This ensures that your old data remains intact.
For example, consider the following code:
<code class="java">try (FileOutputStream out = new FileOutputStream("data.txt", true)) { // Write new data to the file without overwriting out.write("Hello, World!".getBytes()); } catch (IOException e) { e.printStackTrace(); }</code>
By setting the boolean parameter to true, the "Hello, World!" string will be appended to the end of the "data.txt" file, preserving any existing data.
The above is the detailed content of How can FileOutputStream be used to append data to a file without overwriting existing content?. For more information, please follow other related articles on the PHP Chinese website!