Java での「java.util.NoSuchElementException: No line found」の解決
スキャナーを使用してファイルを読み取るときに、次のような問題が発生する可能性があります。 「java.util.NoSuchElementException: 行が見つかりません」実行時エラー。この例外は通常、ファイル内に存在しない行を読み取ろうとした結果、ファイルの末尾を超えて読み取ろうとした場合に発生します。
コードでは、スキャナ (sc) を利用しています。ファイルから行を読み取ります。 while ループ内で sc.nextLine() を呼び出して各行を取得します。ただし、次の行を読み取ろうとする前に、次の行が存在するかどうかは確認しません。その結果、スキャナがファイルの最後に到達し、読み取る行がなくなると、例外がスローされます。
この問題を解決するには、hasNextLine() メソッドを使用して、 sc.nextLine() を使用する前に行を読み取る必要があります。このチェックを組み込むことで、ファイルの終わりを超えて読み取ろうとすることを回避し、例外の発生を防ぐことができます。
これは hasNextLine() チェックが実装されたコードの改訂版です:
while (sc.hasNextLine()) { str = sc.nextLine(); // ... }
このチェックを含めることにより、コードは行が存在する場合にのみその行の読み取りを試行し、「行が見つかりません」例外が発生する可能性を軽減し、プログラムが確実に動作するようにします。
以上がJavaでファイルを読み取るときに「java.util.NoSuchElementException: 行が見つかりません」を修正する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。