亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> java

Java BufferedWriter 类

Java BufferedWriter 类

在本教程中,我们将通过示例了解 Java BufferedWriter 及其方法。

BufferedWriter java.io 的类 包可以与其他编写器一起使用,以更有效地写入数据(以字符为单位)。

它扩展了抽象类 Writer .


BufferedWriter 的工作

BufferedWriter 维护一个 8192 个字符的内部缓冲区 .

在写操作期间,字符被写入内部缓冲区而不是磁盘。一旦缓冲区被填满或写入器关闭,缓冲区中的所有字符都会写入磁盘。

因此,减少了与磁盘的通信次数。这就是为什么使用 BufferedWriter 写字符更快的原因 .


创建一个 BufferedWriter

为了创建一个 BufferedWriter ,我们必须导入 java.io.BufferedWriter 先打包。一旦我们在这里导入包,我们就可以创建缓冲写入器。

// Creates a FileWriter
FileWriter file = new FileWriter(String name);

// Creates a BufferedWriter
BufferedWriter buffer = new BufferedWriter(file);

在上面的例子中,我们创建了一个 BufferedWriter 命名为 缓冲区FileWriter 命名为 文件 .

这里,BufferedWriter的内部缓冲区 默认大小为 8192 个字符。但是,我们也可以指定内部缓冲区的大小。

// Creates a BufferedWriter with specified size internal buffer
BufferedWriter buffer = new BufferedWriter(file, int size);

缓冲区将有助于更有效地将字符写入文件。


BufferedWriter的方法

BufferedWriter 类为 Writer 中存在的不同方法提供实现 .

write() 方法


示例:BufferedWriter 将数据写入文件

import java.io.FileWriter;
import java.io.BufferedWriter;

public class Main {

  public static void main(String args[]) {

    String data = "This is the data in the output file";

    try {
      // Creates a FileWriter
      FileWriter file = new FileWriter("output.txt");

      // Creates a BufferedWriter
      BufferedWriter output = new BufferedWriter(file);

      // Writes the string to the file
      output.write(data);

      // Closes the writer
      output.close();
    }

    catch (Exception e) {
      e.getStackTrace();
    }
  }
}

在上面的示例中,我们创建了一个名为 output 的缓冲写入器 连同 FileWriter .缓冲写入器与 output.txt 链接 文件。

FileWriter file = new FileWriter("output.txt");
BufferedWriter output = new BufferedWriter(file);

要将数据写入文件,我们使用了 write() 方法。

这里当我们运行程序时,output.txt 文件中填充了以下内容。

This is a line of text inside the file.

flush() 方法

要清除内部缓冲区,我们可以使用 flush() 方法。此方法强制写入者将缓冲区中存在的所有数据写入目标文件。

例如,假设我们有一个名为 output.txt 的空文件 .

import java.io.FileWriter;
import java.io.BufferedWriter;

public class Main {
  public static void main(String[] args) {

    String data = "This is a demo of the flush method";

    try {
      // Creates a FileWriter
      FileWriter file = new FileWriter(" flush.txt");

      // Creates a BufferedWriter
      BufferedWriter output = new BufferedWriter(file);

      // Writes data to the file
      output.write(data);

      // Flushes data to the destination
      output.flush();
      System.out.println("Data is flushed to the file.");

      output.close();
    }

    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

输出

Data is flushed to the file.

当我们运行程序时,文件 output.txt 用字符串 data 表示的文本填充 .


close() 方法

要关闭缓冲写入器,我们可以使用 close() 方法。一旦 close() 方法被调用,我们不能使用 writer 写入数据。


BufferedWriter的其他方法

方法 说明
newLine() 向作者插入一个新行
append() 将指定字符插入当前写入器

要了解更多信息,请访问 Java BufferedWriter(Java 官方文档)。


java

  1. Java final 关键字
  2. Java instanceof 运算符
  3. Java 继承
  4. Java 嵌套静态类
  5. Java 匿名类
  6. Java 单例类
  7. Java 反射
  8. Java ArrayList 类
  9. Java ObjectOutputStream 类
  10. Java BufferedReader 类
  11. Java 泛型
  12. Java 文件类