Letzte Zeile aus File auslesen, die einen bestimmten String enthält

B

ByeBye 239685

Hi,

ich habe hier relativ lange Text-Dateien, die sich regelmäßig updaten/verlängern.

Was ich brauche, ist das Wort, was nach dem letzten Vorkommen des Strings "xyz" kommt.

Gibt es da eine Möglichkeit, von "unten" dranzukommen, statt das komplette File von oben durchzuscannen mit FileReader?

Also File-Strukur so in der Art:

belangloser Text
xyz wichtig1
belangloser Text
xyz wichtig2
....

und ich benötige das Wort wichtigx was unmittelbar auf das letzte xyz folgt.

Natürlich geht es so:
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(myFile));
} catch (FileNotFoundException e) {
System.out.println("Error - file does not exist");
}
String s;
String name = "";

while ((s = reader.readLine()) != null) {
if (s.contains("xyz")) {
name = s;
}
}
System.out.println(name);

mit anschließendem Substring/Tokenizer. Aber ist das performancemäßig besser zu lösen?
 
Zuletzt bearbeitet von einem Moderator:

Neue Beiträge

Zurück