// Created on savesnippets.com · https://savesnippets.com/FRcyEt4xdykKqV import java.io.*; import java.nio.file.*; class Demo { void example() throws IOException { // Stream lines from a multi-GB log file with constant memory try (BufferedReader r = Files.newBufferedReader(Path.of("/var/log/big.log"))) { String line; while ((line = r.readLine()) != null) { if (line.contains("ERROR")) System.out.println(line); } } // Same idea with Files.lines() — stream API style try (var lines = Files.lines(Path.of("/var/log/big.log"))) { long errors = lines.filter(l -> l.contains("ERROR")).count(); System.out.println("errors: " + errors); } // Write lines efficiently try (BufferedWriter w = Files.newBufferedWriter(Path.of("out.log"))) { for (int i = 0; i < 10_000; i++) { w.write("line " + i); w.newLine(); } } } }