Heim >Java >javaLernprogramm >Wie verhindert man „java.util.NoSuchElementException: Keine Zeile gefunden' bei Verwendung des Scanners in Java?

Wie verhindert man „java.util.NoSuchElementException: Keine Zeile gefunden' bei Verwendung des Scanners in Java?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-18 22:12:10638Durchsuche

How to Prevent

Fehler „java.util.NoSuchElementException: Keine Zeile gefunden“ beim Lesen aus Dateien mit dem Scanner behoben

Die „java.util.NoSuchElementException Der Fehler „Keine Zeile gefunden“ tritt auf, wenn der Scanner zum Lesen einer Datei verwendet wird und ein Dateiende (EOF) auftritt. Die Fehlermeldung weist darauf hin, dass keine weiteren Zeilen zum Lesen verfügbar sind.

Um diesen Fehler zu verhindern, muss überprüft werden, ob der Scanner über weitere Zeilen zum Lesen verfügt, bevor versucht wird, nextLine() aufzurufen. Die Scanner-Klasse stellt eine hasNextLine()-Methode bereit, um die Verfügbarkeit einer anderen Leitung zu prüfen.

Hier ist eine modifizierte Version des bereitgestellten Codes, die eine Prüfung für hasNextLine() enthält:

while (sc.hasNextLine()) {
    str = sc.nextLine();
    // ... Other code here
}

Durch die Verwendung von hasNextLine() stellen Sie sicher, dass die Methode nextLine() nur dann aufgerufen wird, wenn tatsächlich eine weitere Zeile zum Lesen vorhanden ist. Dadurch wird verhindert, dass die NoSuchElementException am Ende der Datei auftritt.

Beachten Sie, dass es auch ratsam ist, eine Schleifenvariable zu verwenden, um die Anzahl der verarbeiteten Zeilen zu verfolgen, wie im Originalcode gezeigt, um die verschiedenen Szenarien zu bewältigen ( z. B. „Standorte“, „Berufe“ und „Einzelpersonen“). Es ist jedoch wichtig, die Schleifenvariable nach der Verarbeitung jedes Zeilensatzes auf 0 zurückzusetzen.

Das obige ist der detaillierte Inhalt vonWie verhindert man „java.util.NoSuchElementException: Keine Zeile gefunden' bei Verwendung des Scanners in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn