gpt4 book ai didi

java - 没有发现行异常

转载 作者:行者123 更新时间:2023-11-29 06:41:25 27 4
gpt4 key购买 nike

再次帮助大家,为什么我在使用扫描仪时总是出现这种错误,即使我确定该文件存在。

java.util.NoSuchElementException: No line found

我正在尝试使用 for 循环来计算 a 出现的次数。文本文件包含句子行。同时,我想打印句子的确切格式。

Scanner scanLine = new Scanner(new FileReader("C:/input.txt"));
while (scanLine.nextLine() != null) {
String textInput = scanLine.nextLine();
char[] stringArray = textInput.toCharArray();

for (char c : stringArray) {
switch (c) {
case 'a':
default:
break;
}
}
}

最佳答案

while(scanLine.nextLine() != null) {
String textInput = scanLine.nextLine();
}

我会说问题出在这里:

在您的 while 条件下,您扫描最后一行并到达 EOF。之后,您进入循环体并尝试获取下一行,但您已经读取了文件的末尾。将循环条件更改为 scanLine.hasNextLine() 或尝试另一种读取文件的方法。

另一种读取txt文件的方式可以是这样的:

BufferedReader reader = new BufferedReader(new InputStreamReader(new BufferedInputStream(new FileInputStream(new File("text.txt")))));

String line = null;

while ((line = reader.readLine()) != null) {
// do something with your read line
}
reader.close();

或者这个:

byte[] bytes = Files.readAllBytes(Paths.get("text.txt"));
String text = new String(bytes, StandardCharsets.UTF_8);

关于java - 没有发现行异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11499765/

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