java - 如果发生IOException,这个InputStream会被正确关闭吗?

标签 java ioexception

我正在尝试正确处理IOException,而不必求助于大量嵌套的 try/catch 语句。 通过在线阅读,我发现这可能是处理它的正确方法。但我不是100%确定。这是正确的吗?

    try (InputStream in = blob.getBinaryStream()) { 
            while (in.read(bytesRead) != -1) {
                byteStream.write(bytesRead);
            }   
    }catch(IOException e){
        logger.error("An IOException occurred while streaming a blob from the database", e);
    }

最佳答案

InputStreamin 将被关闭,byteStream 则不会。

关于java - 如果发生IOException,这个InputStream会被正确关闭吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48828857/

相关文章:

java - java(spring boot)中的aws lambda函数无法创建文件?

android - 在 flickr 中上传图片显示错误

java - 用于 emacs 的最佳 Java 工具

java - 访问外部 Jar 中的类

java - 为什么有些类在 Android 支持库中不公开?

java - 无法向消息中心发布消息

Java:消除关于导致连接重置的原因的困惑

c#-4.0 - 如何告诉我的 C# 应用程序关闭它在 FileInfo 对象或可能的 Bitmap 对象中打开的文件?

java - 安卓:IOException:权限被拒绝

java - InputStream 被 ImageIO 关闭