java.lang.Object
java.io.OutputStream
- 所有已实现的接口:
-
Closeable
,Flushable
,AutoCloseable
- 直接已知的子类:
-
ByteArrayOutputStream
,FileOutputStream
,FilterOutputStream
,ObjectOutputStream
,PipedOutputStream
这个抽象类是表示字节输出流的所有类的超类。输出流接受输出字节并将它们发送到某个目标。
需要定义OutputStream
子类的应用程序必须始终提供至少一个写入一个输出字节的方法。
- 自从:
- 1.0
- 参见:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
关闭此输出流并释放与此流关联的任何系统资源。void
flush()
刷新此输出流并强制写出任何缓冲的输出字节。static OutputStream
返回一个新的OutputStream
,它丢弃所有字节。void
write
(byte[] b) 从指定的字节数组中写入b.length
字节到此输出流。void
write
(byte[] b, int off, int len) 从指定的字节数组开始的偏移量off
处写入len
字节到此输出流。abstract void
write
(int b) 将指定的字节写入此输出流。
-
Constructor Details
-
OutputStream
public OutputStream()子类调用的构造函数。
-
-
Method Details
-
nullOutputStream
返回一个新的OutputStream
,它丢弃所有字节。返回的流最初是打开的。通过调用close()
方法关闭流。随后对close()
的调用不起作用。在流打开时,
write(int)
、write(byte[])
和write(byte[], int, int)
方法均不起作用。在流关闭后,这些方法都会抛出IOException
。flush()
方法不起作用。- 返回:
-
丢弃所有字节的
OutputStream
- 自从:
- 11
-
write
将指定的字节写入此输出流。write
的一般约定是将一个字节写入输出流。要写入的字节是参数b
的八个低位。参数b
的24个高位被忽略。- 参数:
-
b
- 字节。 - 抛出:
-
IOException
- 如果发生I/O错误。特别地,如果输出流已关闭,可能会抛出IOException
。
-
write
从指定的字节数组中写入b.length
字节到此输出流。write(b)
的一般约定是它应该与调用write(b, 0, b.length)
具有完全相同的效果。- 参数:
-
b
- 数据。 - 抛出:
-
IOException
- 如果发生I/O错误。 - 参见:
-
write
从指定的字节数组的偏移量off
开始写入len
字节到此输出流。write(b, off, len)
的一般约定是数组b
中的一些字节按顺序写入输出流;元素b[off]
是此操作写入的第一个字节,b[off+len-1]
是此操作写入的最后一个字节。如果
b
为null
,则会抛出NullPointerException
。如果
off
为负数,或len
为负数,或off+len
大于数组b
的长度,则会抛出IndexOutOfBoundsException
。- API注释:
- 鼓励子类重写此方法并提供更有效的实现。
- 实现要求:
-
OutputStream
的write
方法在要写出的每个字节上调用一个参数的写方法。 - 参数:
-
b
- 数据。 -
off
- 数据中的起始偏移量。 -
len
- 要写入的字节数。 - 抛出:
-
IOException
- 如果发生I/O错误。特别地,如果输出流已关闭,可能会抛出IOException
。 -
IndexOutOfBoundsException
- 如果off
为负数,len
为负数,或len
大于b.length - off
-
flush
刷新此输出流并强制写出任何缓冲的输出字节。flush
的一般约定是调用它表示,如果先前写入的任何字节已被输出流的实现缓冲,则应立即将这些字节写入其预期的目的地。如果此流的预期目的地是底层操作系统提供的抽象,例如文件,则刷新流仅保证先前写入流的字节被传递给操作系统进行写入;它不保证它们实际被写入物理设备,如磁盘驱动器。
- 指定者:
-
flush
在接口Flushable
中 - 实现要求:
-
OutputStream
的flush
方法不起作用。 - 抛出:
-
IOException
- 如果发生I/O错误。
-
close
关闭此输出流并释放与此流关联的任何系统资源。close
的一般约定是关闭输出流。关闭的流不能执行输出操作,也不能重新打开。- 指定者:
-
close
在接口AutoCloseable
中 - 指定者:
-
close
在接口Closeable
中 - 实现要求:
-
OutputStream
的close
方法不起作用。 - 抛出:
-
IOException
- 如果发生I/O错误。
-