Heim >Java >javaLernprogramm >Wie kann ich effizient auf eine bestimmte Zeile in einer Java-Datei zugreifen?
Zugriff auf eine bestimmte Zeile in einer Datei in Java
In Java erfordert der Zugriff auf eine bestimmte Zeile aus einer Textdatei spezielle Techniken, insbesondere wenn Umgang mit großen Dateien. In diesem Artikel werden zwei Methoden zum Extrahieren einer bestimmten Zeile aus einer Datei basierend auf der Zeilennummer untersucht:
Kleine Dateien:
Bei kleineren Dateien besteht ein einfacher Ansatz darin, die gesamte Datei zu laden Dateiinhalt in den Speicher kopieren und mit der Methode get() mit der Zeilennummer als Index auf die Zeile zugreifen. Dies kann mit der Methode readAllLines() wie folgt erfolgen:
String line32 = Files.readAllLines(Paths.get("file.txt")).get(32);
Große Dateien:
Bei größeren Dateien kann es jedoch sein, dass die gesamte Datei in den Speicher eingelesen wird nicht machbar sein. In solchen Fällen ist es effizienter, die Datei Zeile für Zeile zu streamen und zur gewünschten Zeilennummer zu springen. Mit dem NIO.2-Paket von Java kann dies wie folgt erreicht werden:
try (Stream<String> lines = Files.lines(Paths.get("file.txt"))) { line32 = lines.skip(31).findFirst().get(); }
Bei diesem Ansatz verschiebt skip(31) den Stream in Zeile 32 und findFirst().get() ruft die Zeile als ab ein String-Objekt.
Das obige ist der detaillierte Inhalt vonWie kann ich effizient auf eine bestimmte Zeile in einer Java-Datei zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!