Wie kann ich mit Java prüfen, ob ein Satz in einer Textdatei enthalten ist?

4 Antworten

Hallo LordDerDunkel,

ich würde so etwas mithilfe von java.nio statt java.io überprüfen. Es geht natürlich mit beidem, aber ich habe mich inzwischen an ersteres gewöhnt.

Ich weiß nicht genau, wie du deine Ausgaben haben willst, deshalb hier nur, wie ich es grundsätzlich machen würde:

String text;
String fileName = "D:/Flo/password/loggin.txt";
Path file = Paths.get(fileName);
try {
    text = new String(Files.readAllBytes(file));
    boolean satzIstEnthalten = text.contains("Dein Satz.");
} catch (IOException e) {
    e.printStackTrace();
}

satzIstEnthalten würde nun true sein, wenn in dem Dokument "Dein Satz." steht. Eventuell musst du bei dir noch auf die Codierung achten, also ob das Ganze in UTF-8 ist, beispielsweise. Sonst steht in dem String text dann was anderes drin als in der Datei.

LG

Woher ich das weiß:Hobby

Nutze eine der String-Funktionen aus der Standardbibliothek.

Hallo LordDerDunkel,

reguläre Ausdrücke sollten dir helfen: http://openbook.rheinwerk-verlag.de/javainsel9/javainsel_04_007.htm#mj26fc5cf60311afbddd72295cdd646a48

Ansonsten könntest Du deinen Satz mit einem StringTokenizer am Leerzeichen zerlegen. Dann gehst Du den Text Wort für Wort durch und prüfst wo ein Wort mit dem ersten Wort deines Satzes übereinstimmt. Hast Du einen Treffer musst Du die folgenden Worte ebenfalls vergleichen.

Gruß und viel Spaß