java的IO流 flush()方法

2024-11-02 04:42:58
推荐回答(3个)
回答1:

java的IO流 flush()方法jdk中的定义:
public void flush() throws IOException
刷新此输出流并强制写出所有缓冲的输出字节。
flush 的常规协定是:如果此输出流的实现已经缓冲了以前写入的任何字节,则调用此方法指示应将这些字节立即写入它们预期的目标。
如果此流的预期目标是由基础操作系统提供的一个抽象(如一个文件),则刷新此流只能保证将以前写入到流的字节传递给操作系统进行写入,但不保证能将这些字节实际写入到物理设备(如磁盘驱动器)。
OutputStream 的 flush 方法不执行任何操作。
指定者:
接口 Flushable 中的 flush
抛出:
IOException - 如果发生 I/O 错误。

回答2:

看了你的追问 我来回答

DataOutputStream继承FilterOutputStream
FilterOutputStream继承OutputStream

flush()是OutputStream中的方法,所以DataOutputStream
自然有flush()方法。

回答3:

其实,是不是要flush,看使用的环境的。一般是发送、输出完就要关闭,才用flush