I / O hasNextLine()-在Java中检查空白行时跳过每隔一行

时间:2018-09-20 02:12:25

标签: java input java.util.scanner

我想从文本文件中读取多个由空白行分隔的矩阵。我要一步一步走。现在,作为测试的一部分,我只想通过在每个矩阵之间添加“空白”字样来向控制台显示矩阵。 当我运行下面的代码时,仅每隔一行显示一次?如何识别空白行?实际发生了什么?

while (scan.hasNextLine()) {
        //check for blank line
        if (scan.nextLine().trim().length()==0){
            System.out.println("BLANK"); 
        }else {
          System.out.println(scan.nextLine()); 

        }
      } 

1 个答案:

答案 0 :(得分:1)

每次该行不为空时,您将两次呼叫nextLine

读取一次该行并将其保存在变量中

while (scan.hasNextLine()) {
    //check for blank line
    String val = scan.nextLine();
    if (val.trim().length()==0){
        System.out.println("BLANK"); 
    }else {
      System.out.println(val); 

    }
  }