ホームページ >Java >&#&チュートリアル >Java でスキャナーを使用するときに「java.util.NoSuchElementException: 行が見つかりません」を防ぐ方法は?

Java でスキャナーを使用するときに「java.util.NoSuchElementException: 行が見つかりません」を防ぐ方法は?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-18 22:12:10641ブラウズ

How to Prevent

スキャナーを使用してファイルから読み取るときの「java.util.NoSuchElementException: No line found」エラーの修正

「java.util.NoSuchElementException」スキャナを使用してファイルを読み取り、ファイルの終わりに達すると、「行が見つかりません」エラーが発生する(EOF)。エラー メッセージは、これ以上読み取ることができる行がないことを示しています。

このエラーを防ぐには、nextLine() を呼び出す前に、スキャナーにさらに読み取る行があるかどうかを確認する必要があります。 Scanner クラスは、別の回線が利用可能かどうかをチェックするための hasNextLine() メソッドを提供します。

これは、hasNextLine() のチェックを含む、提供されたコードの修正バージョンです:

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

hasNextLine() を使用すると、実際に読み取る行が他にある場合にのみ nextLine() メソッドが呼び出されるようになります。これにより、ファイルの最後で NoSuchElementException が発生するのを防ぐことができます。

元のコードに示されているように、ループ変数を使用して処理された行数を追跡し、さまざまなシナリオを処理することも賢明であることに注意してください (例:「場所」、「職業」、「個人」)。ただし、各行セットを処理した後、ループ変数を 0 にリセットすることが重要です。

以上がJava でスキャナーを使用するときに「java.util.NoSuchElementException: 行が見つかりません」を防ぐ方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。