Java.io.BufferedWriter.close() 方法


描述

java.io.BufferedWriter.close() 方法从流中刷新字符,然后将其关闭。 关闭后,进一步的 write()、append() 或 flush() 调用将引发 IOException。


声明

以下是 java.io.BufferedWriter.close() 方法的声明

public Writer close()

参数

NA


返回值

此方法不返回任何值。


异常

IOException − 如果发生 I/O 错误


示例

下面的例子展示了 public Writer close() 方法的使用。

package com.tutorialspoint;

import java.io.BufferedWriter;
import java.io.IOException;
import java.io.StringWriter;

public class BufferedWriterDemo {
   public static void main(String[] args) throws IOException {
      
      StringWriter sw = null;
      BufferedWriter bw = null;
      
      try{
         // create string writer
         sw = new StringWriter();
         
         //create buffered writer
         bw = new BufferedWriter(sw);
         
         // append character.
         bw.append("1");
         
         // close the writer
         bw.close();
         
         // print before appending one more character
         System.out.println(sw.getBuffer());
         
         // appending after closing will throw error
         bw.append("2");
         
         // print after appending one more character
         System.out.println(sw.getBuffer());
            
      }catch(IOException e){
         // if I/O error occurs
         System.out.print("Cannot append, buffered writer is closed");
      }finally{
         // releases any system resources associated with the stream
         if(sw!=null)
            sw.close();
         if(bw!=null)
            bw.close();
      }
   }
}

让我们编译运行上面的程序,会产生如下结果:

1
Cannot append, buffered writer is closed