ホームページ >Java >&#&チュートリアル >Java でファイルから特定の行を効率的に読み取るにはどうすればよいですか?
Java でファイルから特定の行を読み取る
ファイルから特定の行を取得することは、さまざまなシナリオで役立ちます。 Java では、特に小さなファイルと大きなファイルの両方を扱う場合に、このタスクを実行するための複数の方法が提供されています。
小さなファイル
ファイル サイズが比較的小さい場合は、最も簡単な方法が最適です。ファイル全体をメモリに読み込み、目的の行にアクセスします。これは、Files.readAllLines() メソッドを使用して実現できます。
String line32 = Files.readAllLines(Paths.get("file.txt")).get(32);
この例では、Paths.get("file.txt") 部分がファイル パスを表し、readAllLines() はファイル全体を読み取ります。ファイルに保存し、各行を文字列としてリストに保存します。 get(32) を使用すると、リストの 32 行目に直接アクセスできます。
大きなファイル
大きなファイルの場合、ファイル全体をメモリに読み込むと、非効率的です。このような場合、Files.lines() メソッドを使用してファイルを 1 行ずつ処理できます。
try (Stream<String> lines = Files.lines(Paths.get("file.txt"))) { line32 = lines.skip(31).findFirst().get(); }
ここで、Files.lines() はファイルから行のストリームを作成します。 Skip(31) メソッドは最初の 31 行をスキップし、findFirst() は 32 行目を取得します。最後に、get() はオプションの値を文字列に変換します。
このアプローチにより、ファイル全体をメモリにロードすることなく、ファイルを効率的に走査して目的の行を取得できます。
以上がJava でファイルから特定の行を効率的に読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。