何时关闭HSSFWorkbook构造函数中使用的InputStream对象?

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

我正在使用HSSFWorkbook,我想知道在构造InputStream对象时应该关闭在哪里使用的HSSFWorkbook对象。 HSSFWorkbook是否在其构造函数中关闭流?还是我们需要手动关闭它?我们可以在构造函数调用之后立即关闭它吗?即HSSFWorkbook对象是否仅在其构造函数中使用InputStream对象?还是将来也可以使用它(在这种情况下,我们无法将其关闭)?谢谢。

public HSSFWorkbook loadSheet(File file) throws FileNotFoundException, IOException {
    return new HSSFWorkbook(new FileInputStream(file)); 
}
java inputstream hssfworkbook
2个回答
0
投票

最好的方法是使用try-with-resources,如以下示例所示:


0
投票

HSSFWorkbook的构造函数没有说明InputStream是关闭还是保持打开状态,因此您不应该假设它将关闭。另一方面,在构造函数本身内使用的类的构造函数也可以。


推荐问答