Обработка исключений ввода-вывода в Java

Обычно я хочу открыть файл, прочитать несколько байтов, а затем закрыть файл. Вот что я придумал:

try
{
    InputStream inputStream = new BufferedInputStream(new FileInputStream(file));
    try
    {
        // ...
        inputStream.read(buffer);
        // ...
    }
    catch (IOException e)
    {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    finally
    {
        try
        {
            inputStream.close();
        }
        catch (IOException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
catch (FileNotFoundException e)
{
    // TODO Auto-generated catch block
    e.printStackTrace();
}

Может быть, я испорчен RAII, но должен быть лучший способ сделать это на Java, верно?

14
задан fredoverflow 6 June 2011 в 09:46
поделиться