【发布时间】:2020-01-03 03:40:56
【问题描述】:
我想知道是否有人可以在我的程序中帮助解决这个 NoSuchElements 异常,该异常会扫描一个非常大的文本,然后将其添加到 ArrayList。
我已经尝试重新排列代码的顺序,看看是否可以解决它,但现在我不知道如何解决它。
异常本身:
Exception in thread "main" java.util.NoSuchElementException
at java.base/java.util.Scanner.throwFor(Scanner.java:937)
at java.base/java.util.Scanner.next(Scanner.java:1478)
at mainTest.main(mainTest.java:11)
mainTest 类:
import java.io.*;
import java.util.*;
public class mainTest {
public static void main(String args[]) throws FileNotFoundException {
ArrayList<String> bigBoi = new ArrayList<>(500000);
Scanner scan1 = new Scanner(new File("LargeDataSet.txt"));
while (scan1.hasNextLine()) {
scan1.next();
String data = scan1.next() + " " + scan1.next();
bigBoi.add(data);
}
ArrayList<String> successful = new ArrayList<>(500000);
}
}
.txt 文件的单位: https://drive.google.com/file/d/1MWfMKMhSvuopOt9WwquABgYBTt0M4eLA/view?usp=sharing
(抱歉需要你从谷歌驱动器下载它,文件太长了,如果我粘贴了 500,000 行,我可能会被报告或其他什么)
【问题讨论】:
-
如果您也共享异常日志会更有帮助。
-
是的,每行包含三个字符串。第一个是一个int,另外两个是一个名字字符串和一个姓氏。
-
stackoverflow.com/a/50750997/9020698 我相信 LargeDataSet.txt 在您的类路径中不存在。您可以尝试提供完整路径。
标签: java java.util.scanner nosuchelementexception