FileInputStream fis=new FileInputStream(fleLibary);
BufferedInputStream bis=new BufferedInputStream(fis);
DataInputStream dis=new DataInputStream(bis);
dis.close()
bis.close()
fis.close()
13 个解决方案
#1
有要求,从内层向外层关闭
#2
同意
#3
按理说,应该是:“和栈的顺序一样,先开的后关,后开得先关”
不过刚才测试了一下,先关那个都不会报错,我也有此疑问
引用别人的一句话“Java是用来做开发的,不是用来研究完美理论的”,
所以请允许java的一些“不合理/不完美之处”
不过刚才测试了一下,先关那个都不会报错,我也有此疑问
引用别人的一句话“Java是用来做开发的,不是用来研究完美理论的”,
所以请允许java的一些“不合理/不完美之处”
#4
这里有个问题,很多代码是这样写的
在这种情况下不可能人工关闭全部流,所以我有疑问是否外层在close后会自动调用内部close
DataInputStream dis=new DataInputStream(new BufferedInputStream(new FileInputStream(fleLibary)));
在这种情况下不可能人工关闭全部流,所以我有疑问是否外层在close后会自动调用内部close
#5
up
#6
经过装饰的流,只关dis就行了
#7
同意
#8
mark
#9
有顺序,有内到外,你上面写的就是对的,文件操作的大部分都要写到try{}catch(){}内,特别是关闭操作
#10
学习了,以前还真没注意这些细节
#11
学些。。。。
#12
只要关闭一个就行,只要关闭最外层的那个流。
#13
谢谢各位回复
分数不多,考虑到这个问题是经验为主,或者需要比较深入的了解,而非代码解决,所以分主要给星号。
分数不多,考虑到这个问题是经验为主,或者需要比较深入的了解,而非代码解决,所以分主要给星号。
#1
有要求,从内层向外层关闭
#2
同意
#3
按理说,应该是:“和栈的顺序一样,先开的后关,后开得先关”
不过刚才测试了一下,先关那个都不会报错,我也有此疑问
引用别人的一句话“Java是用来做开发的,不是用来研究完美理论的”,
所以请允许java的一些“不合理/不完美之处”
不过刚才测试了一下,先关那个都不会报错,我也有此疑问
引用别人的一句话“Java是用来做开发的,不是用来研究完美理论的”,
所以请允许java的一些“不合理/不完美之处”
#4
这里有个问题,很多代码是这样写的
在这种情况下不可能人工关闭全部流,所以我有疑问是否外层在close后会自动调用内部close
DataInputStream dis=new DataInputStream(new BufferedInputStream(new FileInputStream(fleLibary)));
在这种情况下不可能人工关闭全部流,所以我有疑问是否外层在close后会自动调用内部close
#5
up
#6
经过装饰的流,只关dis就行了
#7
同意
#8
mark
#9
有顺序,有内到外,你上面写的就是对的,文件操作的大部分都要写到try{}catch(){}内,特别是关闭操作
#10
学习了,以前还真没注意这些细节
#11
学些。。。。
#12
只要关闭一个就行,只要关闭最外层的那个流。
#13
谢谢各位回复
分数不多,考虑到这个问题是经验为主,或者需要比较深入的了解,而非代码解决,所以分主要给星号。
分数不多,考虑到这个问题是经验为主,或者需要比较深入的了解,而非代码解决,所以分主要给星号。