从具有多行数据的文本文件打印时出现问题

时间:2018-01-19 06:08:22

标签: java file-io

我有一个包含多行数字的文本文件,如下所示:

0.0336    0.0243    0.0261 
0.0075    0.1788    0.0669 

我需要创建一个Java程序,将它们重新格式化为每行一个数字:

0.0336    
0.0243    
0.0261    
0.0075    
0.1788    
0.0669

这是我的代码,但不起作用:

while (scanner.hasNext())
{
   String[] arr = scanner.nextLine().split("\\s+");
   for(int i =0; i< arr.length; i++){
      System.out.println(arr[i]);
   }
}

只要有新行,此代码就会产生额外的行,例如:

0.0336    
0.0243    
0.0261
       //extra line here, which should be ignored 
0.0075    
0.1788    
0.0669

有没有办法忽略这条线?

1 个答案:

答案 0 :(得分:0)

我尝试了同样的方法,你在我的文本文件上正常工作。我这样做了

BufferedReader source = new BufferedReader(new FileReader("/path/of/file/stack.txt"));
scanner = new Scanner(source);
while (scanner.hasNext()) {
    String[] arr = scanner.nextLine().split("\\s+");
    for (int i = 0; i < arr.length; i++) {
        System.out.println(arr[i]);
    }
}
相关问题