无法使用以下Java代码读取完整文件

时间:2015-03-23 17:04:37

标签: java filereader

在阅读部分代码下面的文件时工作正常

//代码A

         try{
              String s1;
              f = new FileReader("C:\\Test.txt");
              f1 = new BufferedReader(f);
              while((s1 = f1.readLine())!=null)
              {
              System.out.println(s1);
              } 
            }

但这不是:

//代码B

      try{
             String s1;
             f = new FileReader("C:\\Test.txt");
             f1 = new BufferedReader(f);        
           while((f1.readLine())!=null)
           {
           s1=f1.readLine();
           System.out.println(s1);
          }
    }

我认为代码A和B都是一样的;但代码A读取文件的完整内容,而代码B不读取。为什么呢?

1 个答案:

答案 0 :(得分:2)

在代码B中,您在一次迭代中调用readLine()两次,因此在一次迭代中读取2行,最后只打印每隔一行。即使您没有将f1.readLine()指定给任何行,仍然会读取该行,并且读者会继续前行到下一行。