What is the correct way to silently close InputStream in finally block without losing the original exception?
<p>I am wondering if the below code closes InputStream in finally block correctly</p>

<pre><code>InputStream is = new FileInputStream("test");
try {
    for(;;) {
        int b = is.read();
        ...
    }
} finally {
    try {
        is.close();
    } catch(IOException e) {
    }
}
</code></pre>

<p>If an exception happens during is.read() will be it ignored / suppressed if an exception happens during is.close()?</p>
