Java FilterOutputStream close()方法与示例
FilterOutputStream类close()方法
close()方法在java.io包中可用。
close()方法用于关闭该流并释放与此流链接的所有系统资源。
close()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
close()方法在关闭流时可能会引发异常。
IOException:遇到任何输入/输出错误时,可能引发此异常。
语法:
public void close();
参数:
它不接受任何参数。
返回值:
该方法的返回类型为void,不返回任何内容。
示例
//Java程序演示示例
//close()FilterInputStream的void方法的说明
import java.io.*;
public class CloseOfFOS {
public static void main(String[] args) throws Exception {
FileInputStream fis_stm = null;
FilterInputStream fil_stm = null;
FileOutputStream fos_stm = null;
FilterOutputStream fol_stm = null;
int count = 0;
try {
//实例化FileOutputStream和
//FilterOutputStream-
fos_stm = new FileOutputStream("D:\\includehelp.txt");
fol_stm = new BufferedOutputStream(fos_stm);
//通过使用close()方法是
//关闭流fol_stm-
fol_stm.close();
//当我们调用write()方法
//关闭fol_stm流后
//将导致异常
fol_stm.write(97);
//通过使用flush()方法是
//写字节到基本
//输出流
fol_stm.flush();
//实例化FileInputStream和
//FilterInputStream-
fis_stm = new FileInputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt");
fil_stm = new BufferedInputStream(fis_stm);
//循环阅读直到可用
//剩余字节数
while ((count = fil_stm.read()) != -1) {
//显示相应的字节值
char ch = (char) count;
//显示值b-
System.out.println("ch: " + ch);
}
} catch (Exception ex) {
System.out.println(ex.toString());
} finally {
//借助此块可以
//释放所有链接的必要资源
//与流
if (fis_stm != null) {
fis_stm.close();
if (fil_stm != null) {
fil_stm.close();
if (fol_stm != null) {
fol_stm.close();
if (fos_stm != null) {
fos_stm.close();
}
}
}
}
}
}
}输出结果
java.io.IOException: Stream Closed