2017-08-02 94 views
2

出於某種原因,當我嘗試掃描.txt文件,它未能找到任何線路,從而導致錯誤:Java掃描儀找不到下一行?

java.util.NoSuchElementException: No line found  
    at java.util.Scanner.nextLine(Unknown Source) 

代碼:

File file = new File("C:\\Users\\kayc0\\Desktop\\CkayBotBets\\mods.txt"); 
Scanner scanner = new Scanner(new FileInputStream (file), "UTF-8"); 

    while(scanner.hasNextLine()){ 
     modsList.add(scanner.nextLine());  
     System.out.println(scanner.nextLine()); 
    } 

我不要關閉掃描儀。 modsList是一個列表,我嘗試添加每一行,以便我可以檢查一個mod是否存在於聊天(用戶)匹配列表中的一個,但錯誤是在System.out ...

我檢查了。 txt文件存在以下內容:

File f = new File("C:\\Users\\kayc0\\Desktop\\CkayBotBets\\mods.txt"); 

      if(f.exists() && !f.isDirectory()) { 
       System.out.println("file exists"); 
      } 

任何人都知道爲什麼行不被讀取?

.TXT內容:

abkayckay 
kayc01 

感謝,感謝任何幫助。

回答

5

您目前正在閱讀兩行而不是一行,將您閱讀的行添加到列表中顯示爲同一行。

while(scanner.hasNextLine()){ 
    String line = scanner.nextLine(); 
    modsList.add(line);  
    System.out.println(line); 
} 
+0

已解決,謝謝! –

3

你叫nextLine tice。更改爲:

while(scanner.hasNextLine()){ 
     String value = scanner.nextLine() 
     modsList.add(value);  
     System.out.println(value); 
    }