在Java中,OutputStream
本身沒有緩沖區。但是,你可以使用BufferedOutputStream
來為輸出流添加緩沖區。BufferedOutputStream
是一個包裝類,它將緩沖區的功能添加到底層的OutputStream
上。
要設置BufferedOutputStream
的緩沖區大小,你需要在創建BufferedOutputStream
對象時指定緩沖區大小。以下是一個示例:
import java.io.*;
public class BufferedOutputStreamExample {
public static void main(String[] args) {
try {
FileOutputStream fos = new FileOutputStream("output.txt");
// 創建一個緩沖區大小為1024字節的BufferedOutputStream
BufferedOutputStream bos = new BufferedOutputStream(fos, 1024);
// 寫入數據到BufferedOutputStream
for (int i = 0; i < 10; i++) {
bos.write("Hello, World!".getBytes());
}
// 關閉流
bos.close();
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
在這個示例中,我們創建了一個緩沖區大小為1024字節的BufferedOutputStream
。當你向BufferedOutputStream
寫入數據時,它會先將數據存儲在緩沖區中,直到緩沖區滿了或者手動調用flush()
方法,才會將數據寫入底層的FileOutputStream
。這樣可以提高寫入性能,因為每次寫入操作都會批量處理多個字節,而不是逐個字節地寫入。