因此,我正在编写一个程序,该程序将从文件中的数据填充部分填充的数组,并且我需要知道文件中的行数,以便可以在for循环上设置条件,因此不会出现界限异常。所以我创建了一个方法,说:
public static int lineFinder(String[] names) throws FileNotFoundException
{
Scanner in = new Scanner(new File("prog6_1.txt"));
int count = 0;
while(in.hasNextLine())
{
count++;
}
return count;
}
我的文件如下所示:
3459凯特·伊丽莎白·布朗4.00
5623雷切尔·杰西卡·史密斯3.45
9837托马斯·罗伯特·多伊3.73
1235莱利·利格林2.43
而且它永远不会终止,我也弄不清为什么,因为我在末尾加了一行。有什么建议么?
最佳答案
hasNextLine()
仅检查,但doesn't consume the line。您需要在循环内调用nextLine()
。