Java中如何追加文件内容

IT 文章2年前 (2023)发布 小编
0 0 0

学习如何使用BufferedWriter、PrintWriter、FileOutputStream和Files类在Java中追加数据到文件。在所有示例中,在打开文件以进行写入时,我们传递了第二个参数为true,表示文件需要以追加模式打开。

1.使用NIO Files

使用Files类,我们可以使用其write()函数来写入文件。在内部,write()函数使用OutputStream将字节数组写入文件。

要将内容追加到现有文件中,请在写入内容时使用StandardOpenOption.APPEND。

ad

程序员导航

优网导航旗下整合全网优质开发资源,一站式IT编程学习与工具大全网站

String textToAppend = "Happy Learning !!";
Path path = Paths.get("c:/temp/samplefile.txt");
Files.write(path, textToAppend.getBytes(), StandardOpenOption.APPEND);

2. 使用BufferedWriter

BufferedWriter在将数据写入文件之前会将数据缓冲在内部字节数组中,因此它会减少IO操作并提高性能。

要将字符串追加到现有文件中,请在打开写入器时以追加模式打开,并将第二个参数传递为true。

String textToAppend = "Happy Learning !!";
Strinng filePath = "c:/temp/samplefile.txt";
try(FileWriter fw = new FileWriter(filePath, true);
BufferedWriter writer = new BufferedWriter(fw);) {
  writer.write(textToAppend);
}

3. 使用PrintWriter

我们可以使用PrintWriter将格式化的文本写入文件。PrintWriter实现了在PrintStream中找到的所有print()方法,因此我们可以使用在System.out.println()语句中使用的所有格式。

要将内容追加到现有文件中,请在打开写入器时通过将第二个参数传递为true以追加模式打开。

ad

AI 工具导航

优网导航旗下AI工具导航,精选全球千款优质 AI 工具集

String textToAppend = "Happy Learning !!";
String fileName = "c:/temp/samplefile.txt";
try(FileWriter fileWriter = new FileWriter(fileName, true);
PrintWriter printWriter = new PrintWriter(fileWriter);) {
  printWriter.println(textToAppend);
}

4. 使用FileOutputStream

使用FileOutputStream将二进制数据写入文件。FileOutputStream用于写入原始字节流,如图像数据。对于写入字符流,请考虑使用FileWriter。

要将内容追加到现有文件中,请在打开FileOutputStream时通过将第二个参数传递为true以追加模式打开。

String textToAppend = "\r\n Happy Learning !!";
String fileName = "c:/temp/samplefile.txt";
try(FileOutputStream outputStream
  = new FileOutputStream(fileName, true)) {
  byte[] strToBytes = textToAppend.getBytes();
  outputStream.write(strToBytes);
}
© 版权声明

相关文章

暂无评论

暂无评论...