java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
- 所有已实现的接口:
-
Closeable,Flushable,AutoCloseable
- 直接已知的子类:
-
BufferedOutputStream,CheckedOutputStream,CipherOutputStream,DataOutputStream,DeflaterOutputStream,DigestOutputStream,InflaterOutputStream,PrintStream
这个类是所有过滤输出流类的超类。这些流位于已经存在的输出流(即基本的数据接收端)之上,它使用这个已存在的输出流作为数据的基本接收端,但可能在传输数据的过程中对数据进行转换或提供额外的功能。
FilterOutputStream类本身只是简单地重写了所有OutputStream的方法,这些重写的方法将所有请求传递给底层的输出流。 FilterOutputStream的子类可能进一步重写其中的一些方法,并提供额外的方法和字段。
- 自从:
- 1.0
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Methods declared in class java.io.OutputStream
nullOutputStream
-
Field Details
-
out
要被过滤的底层输出流。
-
-
Constructor Details
-
FilterOutputStream
在指定的底层输出流之上创建一个输出流过滤器。- 参数:
-
out- 要分配给字段this.out以供以后使用的底层输出流,如果要创建一个没有底层流的实例,则为null。
-
-
Method Details
-
write
向这个输出流写入指定的byte。FilterOutputStream的write方法调用其底层输出流的write方法,即执行out.write(b)。实现了
OutputStream的抽象write方法。- 指定者:
-
write在类OutputStream - 参数:
-
b- 这个byte。 - 抛出:
-
IOException- 如果发生I/O错误。
-
write
向这个输出流写入b.length字节。- 覆盖:
-
write在类OutputStream - 实现要求:
-
FilterOutputStream的write方法使用参数b、0和b.length调用其带有三个参数的write方法。 - 实现注意:
-
请注意,此方法不会使用单个参数
b调用其底层输出流的单参数write方法。 - 参数:
-
b- 要写入的数据。 - 抛出:
-
IOException- 如果发生I/O错误。
-
write
从指定的byte数组中的偏移量off开始写入len字节到这个输出流。- 覆盖:
-
write在类OutputStream - 实现要求:
-
FilterOutputStream的write方法对每个要输出的byte调用带有一个参数的write方法。 - 实现注意:
-
请注意,此方法不会使用相同参数调用其底层输出流的
write方法。FilterOutputStream的子类应该提供这个方法的更有效的实现。 - 参数:
-
b- 数据。 -
off- 数据的起始偏移量。 -
len- 要写入的字节数。 - 抛出:
-
IOException- 如果发生I/O错误。 -
IndexOutOfBoundsException- 如果off为负数,len为负数,或者len大于b.length - off
-
flush
刷新这个输出流并强制将任何缓冲的输出字节写入流中。- 指定者:
-
flush在接口Flushable - 覆盖:
-
flush在类OutputStream - 实现要求:
-
FilterOutputStream的flush方法调用其底层输出流的flush方法。 - 抛出:
-
IOException- 如果发生I/O错误。
-
close
关闭这个输出流并释放与该流关联的任何系统资源。- 指定者:
-
close在接口AutoCloseable - 指定者:
-
close在接口Closeable - 覆盖:
-
close在类OutputStream - 实现要求:
-
如果尚未关闭,
FilterOutputStream的close方法调用其flush方法,然后调用其底层输出流的close方法。 - 抛出:
-
IOException- 如果发生I/O错误。
-