1 package com.itheima.demo01.BufferedStream; 2 3 import java.io.BufferedOutputStream; 4 import java.io.FileOutputStream; 5 import java.io.IOException; 6 7 /* 8 java.io.BufferedOutputStream extends OutputStream 9 BufferedOutputStream:字節緩沖輸出流 10 11 繼承自父類的共性成員方法: 12 - public void close() :關閉此輸出流並釋放與此流相關聯的任何系統資源。 13 - public void flush() :刷新此輸出流並強制任何緩沖的輸出字節被寫出。 14 - public void write(byte[] b):將 b.length字節從指定的字節數組寫入此輸出流。 15 - public void write(byte[] b, int off, int len) :從指定的字節數組寫入 len字節,從偏移量 off開始輸出到此輸出流。 16 - public abstract void write(int b) :將指定的字節輸出流。 17 18 構造方法: 19 BufferedOutputStream(OutputStream out) 創建一個新的緩沖輸出流,以將數據寫入指定的底層輸出流。 20 BufferedOutputStream(OutputStream out, int size) 創建一個新的緩沖輸出流,以將具有指定緩沖區大小的數據寫入指定的底層輸出流。 21 參數: 22 OutputStream out:字節輸出流 23 我們可以傳遞FileOutputStream,緩沖流會給FileOutputStream增加一個緩沖區,提高FileOutputStream的寫入效率 24 int size:指定緩沖流內部緩沖區的大小,不指定默認 25 使用步驟(重點) 26 1.創建FileOutputStream對象,構造方法中綁定要輸出的目的地 27 2.創建BufferedOutputStream對象,構造方法中傳遞FileOutputStream對象對象,提高FileOutputStream對象效率 28 3.使用BufferedOutputStream對象中的方法write,把數據寫入到內部緩沖區中 29 4.使用BufferedOutputStream對象中的方法flush,把內部緩沖區中的數據,刷新到文件中 30 5.釋放資源(會先調用flush方法刷新數據,第4部可以省略) 31 */ 32 public class Demo01BufferedOutputStream { 33 public static void main(String[] args) throws IOException { 34 //1.創建FileOutputStream對象,構造方法中綁定要輸出的目的地 35 FileOutputStream fos = new FileOutputStream("10_IO\\a.txt"); 36 //2.創建BufferedOutputStream對象,構造方法中傳遞FileOutputStream對象對象,提高FileOutputStream對象效率 37 BufferedOutputStream bos = new BufferedOutputStream(fos); 38 //3.使用BufferedOutputStream對象中的方法write,把數據寫入到內部緩沖區中 39 bos.write("我把數據寫入到內部緩沖區中".getBytes()); 40 //4.使用BufferedOutputStream對象中的方法flush,把內部緩沖區中的數據,刷新到文件中 41 bos.flush(); 42 //5.釋放資源(會先調用flush方法刷新數據,第4部可以省略) 43 bos.close(); 44 } 45 46 }