在java中输入流关闭后是否还可以使用它?

问题描述 投票:0回答:1

需要在各种方法中使用文件的inputStream,但我在try-with-resources中使用了inputStream,因此导致流已关闭错误。在java中关闭后是否可以将inputStream用于另一个方法?

java io inputstream java-io
1个回答
3
投票

Java中的

InputStream
关闭后就没有办法使用了,这就是关闭的目的。 如果您想在
InputStream
块之外保留可用的
try{}
,则不应使用 try-with-resources 方法,而只需在
catch
块中将其关闭即可。 但是你需要考虑如果在
try
块之外遇到异常会发生什么。

如果同一个资源必须由多个方法使用,并且您希望确保在出现任何类型的错误时将其关闭,那么您应该有一个

try{}
块来封装后面的所有方法并关闭您的资源。

© www.soinside.com 2019 - 2024. All rights reserved.