FilterOutputStream
java.lang.Object
|—java.io.OutputStream
|—|—java.io.FilterOutputStream
public class FilterOutputStream
extends OutputStream
这个类是过滤输出流的所有类的超类。 这些流位于已经存在的输出流(底层输出流)之上,它用作其基本数据接收器,但可能会沿途转换数据或提供附加功能。
FilterOutputStream 类本身只是简单地使用将所有请求传递到底层输出流的版本覆盖了 OutputStream 的所有方法。 FilterOutputStream 的子类可能会进一步覆盖其中一些方法,并提供额外的方法和字段。
Since:
JDK1.0
字段摘要
修饰符和类型 | 字段 | 描述 |
---|---|---|
protected OutputStream | out | 要过滤的底层输出流。 |
构造函数摘要
构造函数 | 描述 |
---|---|
FilterOutputStream(OutputStream out) | 在指定的基础输出流之上创建一个输出流过滤器。 |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
void | close() | 关闭此输出流并释放与该流关联的所有系统资源。 |
void | flush() | 刷新此输出流并强制将任何缓冲的输出字节写出到流中。 |
void | write(byte[] b) | 将 b.length 字节写入此输出流。 |
void | write(byte[] b, int off, int len) | 将指定字节数组中的 len 个字节写入此输出流。 |
void | write(int b) | 将指定字节写入此输出流。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息
out
protected OutputStream out
要过滤的底层输出流。
构造函数详细信息
FilterOutputStream
public FilterOutputStream(OutputStream out)
在指定的基础输出流之上创建一个输出流过滤器。
参数:
参数名称 | 参数描述 |
---|---|
out | 要分配给字段 this.out 以供以后使用的基础输出流,如果要在没有基础流的情况下创建此实例,则为 null。 |
方法详情
write
public void write(int b) throws IOException
将指定字节写入此输出流。
FilterOutputStream的write方法调用其底层输出流的write方法,即执行out.write(b)。
实现OutputStream的抽象写方法。
指定者:
写在类 OutputStream
参数:
参数名称 | 参数描述 |
---|---|
b | 字节。 |
Throws:
Throw名称 | Throw描述 |
---|---|
IOException | 如果发生 I/O 错误。 |
write
public void write(byte[] b) throws IOException
将 b.length 字节写入此输出流。
FilterOutputStream 的 write 方法调用其三个参数的 write 方法,参数为 b、0 和 b.length。
请注意,此方法不会使用单个参数 b 调用其基础流的单参数写入方法。
覆盖:
写在类 OutputStream
参数:
参数名称 | 参数描述 |
---|---|
b | 要写入的数据。 |
Throws:
Throw名称 | Throw描述 |
---|---|
IOException | 如果发生 I/O 错误。 |
write
public void write(byte[] b, int off, int len) throws IOException
将指定字节数组中的 len 个字节写入此输出流。
FilterOutputStream 的 write 方法在每个字节上调用一个参数的 write 方法进行输出。
请注意,此方法不会使用相同的参数调用其底层输入流的 write 方法。 FilterOutputStream 的子类应提供此方法的更有效实现。
覆盖:
写在类 OutputStream
参数:
参数名称 | 参数描述 |
---|---|
b | 数据。 |
off | 数据中的起始偏移量。 |
len | 要写入的字节数。 |
Throws:
Throw名称 | Throw描述 |
---|---|
IOException | 如果发生 I/O 错误。 |
flush
public void flush() throws IOException
刷新此输出流并强制将任何缓冲的输出字节写出到流中。
FilterOutputStream 的 flush 方法调用其底层输出流的 flush 方法。
指定者:
在接口 Flushable 中刷新
覆盖:
类 OutputStream 中的刷新
Throws:
Throw名称 | Throw描述 |
---|---|
IOException | 如果发生 I/O 错误。 |
close
public void close() throws IOException
关闭此输出流并释放与该流关联的所有系统资源。
FilterOutputStream 的 close 方法调用其 flush 方法,然后调用其底层输出流的 close 方法。
指定者:
在接口 AutoCloseable 中关闭
指定者:
在接口Closeable中关闭
覆盖:
在类 OutputStream 中关闭
Throws:
Throw名称 | Throw描述 |
---|---|
IOException | 如果发生 I/O 错误。 |