IO流中关闭和刷新的区别

IO流中关闭和刷新的区别

因为内置缓冲区的原因,如果不关闭输出流,无法写出字符到文件中,但是关闭的流对象,是无法继续写出数据的,如果我们既想写出数据,又想继续使用流,就需要使用flush方法了

  • flush : 刷新缓冲区,流对象可以继续使用

  • close : 先刷新缓冲区,然后通知系统释放资源,流对象不可以再被使用了

示例

package com.test0229;

import java.io.FileWriter;
import java.io.IOException;

public class Test001 {
    public static void main(String[] args) throws IOException {
        //创建FileWriter对象,构造方法中绑定要写入数据的目的地
        FileWriter fileWriter = new FileWriter("D:\\IDEAPROJ\\test0229\\1.txt");
        //使用FileWriter中的方法write,把数据写入到内存缓冲区中(字符转换为字节的过程)
        //void write(int c)写入单个字符
        fileWriter.write(97);
        //使用FileWriter中的方法flush,把内存缓冲区中的数据,刷新到文件中
        fileWriter.flush();
        //刷新之后刘可以继续使用
        fileWriter.write(98);
        //释放资源(会先把内存缓冲区中的数据刷新到文件中)
        fileWriter.close();
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章