Java Java.io.BufferedOutputStream.flush() 方法

  • 描述

    java.io.BufferedInputStream.flush()方法刷新缓冲的输出字节以写出到基础输出流。
  • 声明

    以下是java.io.BufferedOutputStream.flush()方法的声明。
     public void flush()
  • 参数

    不适用
  • 返回值

    此方法不返回任何值。
  • 异常

    IOException如果发生I / O错误。
  • 例子

    以下示例显示java.io.BufferedOutputStream.flush()方法的用法。
     package com.jc2182; 
    import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.FileInputStream;
    import java.io.IOException;
    
    public class BufferedOutputStreamDemo {
       public static void main(String[] args) throws Exception {
          FileInputStream is = null;
          BufferedInputStream bis = null;
          ByteArrayOutputStream baos = null;
          BufferedOutputStream bos = null;
                    
          try {
             // open input stream test.txt for reading purpose.
             is = new FileInputStream("c:/test.txt");
    
             // input stream is converted to buffered input stream
             bis = new BufferedInputStream(is);
    
             // creates a new byte array output stream
             baos = new ByteArrayOutputStream();
    
             // creates a new buffered output stream to write 'baos'
             bos = new BufferedOutputStream(baos);
                    
             int value;
    
             // the file is read to the end
             while ((value = bis.read()) != -1) {
                bos.write(value);
             }
    
             // invokes flush to force bytes to be written out to baos
             bos.flush();
    
             // every byte read from baos
             for (byte b: baos.toByteArray()) {
                
                // converts byte to character
                char c = (char)b;
                System.out.print(c);
             }
          } catch(IOException e) {
             // if any IOException occurs 
             e.printStackTrace();
          } finally {
             // releases any system resources associated with the stream
             if(is!=null)
                is.close();
             if(bis!=null)
                bis.close();
             if(baos!=null)
                baos.close();
             if(bos!=null)
                bos.close();
          } 
       }
    }
    
    假设我们有一个文本文件c:/test.txt ,其内容如下。该文件将用作示例程序的输入-
     ABCDEFGHIJKLMNOPQRSTUVWXYZ
    让我们编译并运行以上程序,这将产生以下结果-
     ABCDEFGHIJKLMNOPQRSTUVWXYZ