java.io

接口
异常
错误
java.lang.Object
  继承者 java.io.OutputStream
      继承者 java.io.FilterOutputStream
所有已实现的接口:
Closeable, Flushable
直接已知子类:
BufferedOutputStream, CheckedOutputStream, CipherOutputStream, DataOutputStream, DeflaterOutputStream, DigestOutputStream, InflaterOutputStream, PrintStream

public class FilterOutputStream
     
extends OutputStream

此类是过滤输出流的所有类的超类。这些流位于已存在的输出流(基础 输出流)之上,它们将已存在的输出流作为其基本数据接收器,但可能直接传输数据或提供一些额外的功能。

FilterOutputStream 类本身只是简单地重写那些将所有请求传递给所包含输出流的 OutputStream 的所有方法。FilterOutputStream 的子类可进一步地重写这些方法中的一些方法,并且还可以提供一些额外的方法和字段。

从以下版本开始:
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)
          将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流。
 void write(int b)
          将指定 byte 写入此输出流。
 
从类 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
将指定 byte 写入此输出流。

FilterOutputStreamwrite 方法调用其基础输出流的 write 方法,也就是说,它执行 out.write(b)

实现 OutputStream 的抽象 write 方法。

指定者:
OutputStream 中的 write
参数:
b - byte
抛出:
IOException - 如果发生 I/O 错误。

write

public void write(byte[] b)
           throws IOException
b.length 个字节写入此输出流。

FilterOutputStreamwrite 方法将 b0b.length 作为三个参数来调用 write 方法。

注意,此方法不调用其底层流的只带有单个参数 bwrite 方法。

覆盖:
OutputStream 中的 write
参数:
b - 要写入的数据。
抛出:
IOException - 如果发生 I/O 错误。
另请参见:
write(byte[], int, int)

write

public void write(byte[] b,
                  int off,
                  int len)
           throws IOException
将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此输出流。

FilterOutputStreamwrite 方法依次调用带一个参数的 write 方法来输出每个 byte

注意,此方法不会调用其基础输入流的带有相同参数的 write 方法。FilterOutputStream 的子类应该提供此方法更有效的实现。

覆盖:
OutputStream 中的 write
参数:
b - 数据。
off - 数据中的起始偏移量。
len - 要写入的字节数。
抛出:
IOException - 如果发生 I/O 错误。
另请参见:
write(int)

flush

public void flush()
           throws IOException
刷新此输出流,并强制将所有已缓冲的输出字节写入该流中。

FilterOutputStreamflush 方法调用其基础输出流的 flush 方法。

指定者:
接口 Flushable 中的 flush
覆盖:
OutputStream 中的 flush
抛出:
IOException - 如果发生 I/O 错误。
另请参见:
out

close

public void close()
           throws IOException
关闭此输出流并释放与此流有关的所有系统资源。

FilterOutputStreamclose 方法先调用其 flush 方法,然后调用其基础输出流的 close 方法。

指定者:
接口 Closeable 中的 close
覆盖:
OutputStream 中的 close
抛出:
IOException - 如果发生 I/O 错误。
另请参见:
flush(), out