И вообще работа с потоками некорректная. Исключение в конструкторе BufferedReader - и FileReader останется навсегда открытым.