字节流、缓冲流,这些调用close方法的先后顺序有关系吗
我按老师这样写,会抛出IOException,然后我这样写又可以,先关闭了缓冲读、写流
br.close();
bw.close();
fis.close();
fos.close();
isr.close();
osw.close();
不然异常如下
java.io.IOException: Stream closed
at sun.nio.cs.StreamEncoder.ensureOpen(StreamEncoder.java:45)
at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:118)
at java.io.OutputStreamWriter.write(OutputStreamWriter.java:207)
at java.io.BufferedWriter.flushBuffer(BufferedWriter.java:129)
at java.io.BufferedWriter.close(BufferedWriter.java:265)
at com.imooc.file.ReaderBufferedDemo1.main(ReaderBufferedDemo1.java:43)
正在回答
同学你好,非常抱歉,老师将顺序写跌倒了,正确顺序如下:
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星