void 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