Java.io.OutputStream.flush() 方法

描述

java.io.OutputStream.flush() 方法刷新此输出流并强制写出任何缓冲的输出字节。 flush 的一般约定是,调用它表示,如果先前写入的任何字节已被输出流的实现缓冲,则应立即将这些字节写入其预期目的地。

如果此流的预期目的地是底层操作系统提供的抽象,例如文件,则刷新流仅保证先前写入流的字节被传递给操作系统进行写入; 它不能保证它们确实被写入了物理设备,例如磁盘驱动器。

OutputStream 的 flush 方法什么都不做。


声明

以下是 java.io.OutputStream.flush() 方法的声明。

public void close()

参数

NA


返回值

此方法不返回值。


异常

IOException − 如果发生 I/O 错误。


示例

下面的例子展示了 java.io.OutputStream.flush() 方法的使用。

package com.tutorialspoint;

import java.io.*;

public class OutputStreamDemo {
   public static void main(String[] args) {
      try {
         // create a new output stream
         OutputStream os = new FileOutputStream("test.txt");

         // craete a new input stream
         InputStream is = new FileInputStream("test.txt");

         // write something
         os.write('A');

         // flush the stream but it does nothing
         os.flush();

         // write something else
         os.write('B');

         // read what we wrote
         System.out.println("" + is.available());
      } catch (Exception ex) {
         ex.printStackTrace();
      }
   }
}

让我们编译并运行上面的程序,这将产生下面的结果 −

2