java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.io.BufferedOutputStream
- 所有已实现的接口:
-
Closeable,Flushable,AutoCloseable
该类实现了一个缓冲输出流。通过设置这样的输出流,应用程序可以将字节写入底层输出流,而不一定导致每写入一个字节就调用底层系统。
- 自 JDK 版本:
- 1.0
-
Field Summary
FieldsFields declared in class java.io.FilterOutputStream
out -
Constructor Summary
ConstructorsConstructorDescription创建一个新的缓冲输出流,用于向指定的底层输出流写入数据。BufferedOutputStream(OutputStream out, int size) 创建一个新的缓冲输出流,用于向指定的底层输出流以及指定的缓冲区大小写入数据。 -
Method Summary
Methods declared in class java.io.FilterOutputStream
close, writeMethods declared in class java.io.OutputStream
nullOutputStream
-
Field Details
-
buf
protected byte[] buf存储数据的内部缓冲区。 -
count
protected int count缓冲区中有效字节数。该值始终在范围0到buf.length之间;元素buf[0]到buf[count-1]包含有效的字节数据。
-
-
Constructor Details
-
BufferedOutputStream
创建一个新的缓冲输出流,用于向指定的底层输出流写入数据。- 参数:
-
out- 底层输出流。
-
BufferedOutputStream
创建一个新的缓冲输出流,用于向指定的底层输出流以及指定的缓冲区大小写入数据。- 参数:
-
out- 底层输出流。 -
size- 缓冲区大小。 - 抛出:
-
IllegalArgumentException- 如果 size <= 0。
-
-
Method Details
-
write
将指定的字节写入此缓冲输出流。- 覆盖:
-
write在类FilterOutputStream中 - 参数:
-
b- 要写入的字节。 - 抛出:
-
IOException- 如果发生 I/O 错误。
-
write
从指定的字节数组中的偏移量off处开始写入len字节到此缓冲输出流。通常,此方法将字节数组中的字节存储到此流的缓冲区中,并根据需要将缓冲区刷新到底层输出流。但是,如果请求的长度至少与此流的缓冲区一样大,则此方法将刷新缓冲区并直接将字节写入底层输出流。因此,多余的
BufferedOutputStream不会不必要地复制数据。- 覆盖:
-
write在类FilterOutputStream中 - 参数:
-
b- 数据。 -
off- 数据的起始偏移量。 -
len- 要写入的字节数。 - 抛出:
-
IOException- 如果发生 I/O 错误。 -
IndexOutOfBoundsException- 如果off为负数,len为负数,或者len大于b.length - off - 参见:
-
flush
刷新此缓冲输出流。这将强制将任何缓冲的输出字节写入底层输出流。- 指定者:
-
flush在接口Flushable中 - 覆盖:
-
flush在类FilterOutputStream中 - 抛出:
-
IOException- 如果发生 I/O 错误。 - 参见:
-