读取文件时的java.util.NoSuchElementException(扫描程序)

时间:2012-07-22 17:36:53

标签: java java.util.scanner

我有一个包含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尚未实现,但应该进一步下降。

1 个答案:

答案 0 :(得分:1)

你确定第121行不是下一行吗?

您检查reader.hasNext()以确保还有其他条目,但您可以在abc中阅读3个条目。例如,如果只有一个,b = reader.next()将会失败。