gpt4 book ai didi

java - 从文件读取时尝试使用 .hasNext() 时出现无限循环(?)

转载 作者:行者123 更新时间:2023-12-02 05:15:18 28 4
gpt4 key购买 nike

我正在尝试让 Java 使用 hasNext()hasNextLine() 和 while 循环来计算文本文件中的行数,尽管我似乎是遇到一些麻烦。该程序将持续运行,我相信它陷入了无限循环。如果有人可以解释这个问题并给我一个可能的解决方案,我将不胜感激。

这是程序正在读取的文件(hurcdata2.txt,它保存在程序的目录中):

1980 Aug    945 100 Allen
1983 Aug 962 100 Alicia
1984 Sep 949 100 Diana
1985 Jul 1002 65 Bob
1985 Aug 987 80 Danny
1985 Sep 959 100 Elena
1985 Sep 942 90 Gloria
1985 Oct 971 75 Juan
1985 Nov 967 85 Kate

这是我的代码:

import java.util.Scanner;
import java.io.*;
public class HurricaneData
{
public static void main(String[] args) throws IOException
{
File hurricaneData = new File("TestText.txt");
Scanner inFileHD = new Scanner(hurricaneData);
int n = 0; //represents number of blocks of data
while( inFileHD.hasNextLine() )
{
n++;
}
System.out.println(n + " block of data");
inFileHD.close();
}
}

最佳答案

您需要使用扫描仪的输入,否则inFileHD.hasNextLine()将始终为true

while (inFileHD.hasNextLine()) {
inFileHD.nextLine(); // add this
...
}

关于java - 从文件读取时尝试使用 .hasNext() 时出现无限循环(?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27006897/

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