BufferedReader的IOException

时间:2014-02-02 13:55:32

标签: java exception try-catch ioexception

如果无法读取文件,我必须创建一个阅读器并捕获异常。代码是这样的:

String line;
try {
    while ((line = reader.readLine()) != null) {
    //DO SOMETHING
    }
} catch (IOException e) {
    System.out.println("IO operation failed.");
    e.printStackTrace();
}

我有两个问题:

  1. 这段代码好吗?
  2. 如何制作“不可读”的文件来测试代码?

2 个答案:

答案 0 :(得分:0)

如果找不到该文件,您将获得异常,可能存在您尚未创建该文件的情况,或者您已从正在阅读的文件中删除该文件,或者可能存在其他IOException

  java.io.IOException
          |
          |
   java.io.FileNotFoundException

因为FileNotFoundException是java.io.IOException的子级

答案 1 :(得分:-1)

您应该使用.ready()方法。

String line;
while(reader.ready())
{
    line = reader.readLine();
    ....
}