因为内置缓冲区的原因,如果不关闭输出流,无法写出字符到文件中。

但是关闭的流对象,是无法继续写出数据 的。如果我们既想写出数据,又想继续使用流,就需要 flush 方法了。

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

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

 

public class FWWrite {   

   public static void main(String[] args) throws IOException { 

   // 使用文件名称创建流对象         

  FileWriter fw = new FileWriter("fw.txt");       

   // 写出数据,通过flush       

   fw.write('刷');

  // 写出第1个字符

  fw.flush();         

  fw.write('新');

  // 继续写出第2个字符,写出成功       

   fw.flush();             

   // 写出数据,通过close         

     fw.write('关');

  // 写出第1个字符         

  fw.close();         

  fw.write('闭');

  // 继续写出第2个字符,【报错】

  java.io.IOException: Stream closed       

  fw.close();   

 }

相关文章:

  • 2021-07-03
  • 2021-12-01
  • 2022-12-23
  • 2021-05-27
  • 2021-09-24
  • 2022-12-23
猜你喜欢
  • 2021-05-25
  • 2021-07-22
  • 2022-12-23
  • 2022-12-23
  • 2021-10-14
  • 2021-04-20
  • 2022-01-22
相关资源
相似解决方案