我有一个包含3个单词的文本文件,在尝试阅读这些单词时,我收到以下错误:
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at search.search(search.java:121)
at main.main(main.java:38)
以下是有问题的代码:
Scanner reader = new Scanner(path + client + "\\" + cat +"\\" + query + ".arch");
while (reader.hasNext()){
String a = reader.next(); // line 121
String b = reader.next();
String c = reader.next();
file = new File (path + client + "\\" + a +"\\" + b + ".arch");
print(file);
}
以下是文件的内容:
po ref refc(最后用新行)
是什么给出的?
我之前使用过一个非常相似的系统,使用相同的文件,一切正常,我甚至使用了一个非常相似的系统,下面有几行。
顺便说一句,字符串c尚未实现,但应该进一步下降。
答案 0 :(得分:1)
你确定第121行不是下一行吗?
您检查reader.hasNext()
以确保还有其他条目,但您可以在a
,b
,c
中阅读3个条目。例如,如果只有一个,b = reader.next()
将会失败。