gpt4 book ai didi

java - 循环通过 FileInputStream 时出现无限循环

转载 作者:行者123 更新时间:2023-12-01 16:37:17 25 4
gpt4 key购买 nike

好吧,我正在编写一个 Java 应用程序来导入 csv 文件,然后循环遍历结果,并将它们加载到数组中。我正确导入文件,因为它没有通过异常。我的问题是,当我尝试计算 FileInputStream 中的记录数时,我陷入了无限循环。这里可能有什么问题。代码如下:

这是我的类,它有一个调用 go() 的 Main 方法:

public void go() {
pop = new PopularNames();
popGui = new PopularNamesGui();
String file = popGui.userInput("Enter the correct name of a file:");
pop.setInputStream(file);
pop.getNumberOfNames();
}

这是类PopularNames (pop),在下面的方法中我将inputStream var 设置为新的FileINputStream。文件名由用户提供。

public void setInputStream(String aInputStream) {
try {
inputStream = new Scanner(new FileInputStream(aInputStream));
} catch (FileNotFoundException e) {
System.out.println("The file was not found.");
System.exit(0);
}
}

这就是麻烦的方法。我只是循环遍历 FileInputStream 并计算记录数:

public void getNumberOfNames() {
while (this.inputStream.hasNext()) {
fileDataRows++;
}
}

最佳答案

public void getNumberOfNames() {   
while (this.inputStream.hasNext()) {
inputStream.nextLine(); // Need to read it so that we can go to next line if any
fileDataRows++;
}
}

关于java - 循环通过 FileInputStream 时出现无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7802741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com