Derzeit beschäftige ich mich mit dem sortieren von Stichworten in einem Text.
1. Es wird ein Text eingelesen (Textinhalt) der Inhalt ist ein Schriftverkehr.
2. Es wird eine Stichwortliste eingelesen (KontaktNamen.txt)
Ein Schriftverkehr hat einen Absender und einen Empfänger.
Ich möchte den Absender und den Empfänger automatisch ermitteln lassen, indem ich vergleiche wer an welcher Stelle steht. Der Absender ist an erster Stelle zu finden und der Empfänger an zweiter Stelle.
Ich vergleiche in meinem Code ob der Absender vor dem Empfänger im Text kommt. Wenn ja dann wird der Empfänger übschrieben, wenn nicht, bleibt der Wert. In einer Schleife werden die Absender ständig mit neuen gefundenen Stichworten belegt.
Leider habe ich in der Schleife irgendwo ein Problem, da sich diese scheinbar unnötig wiederholt.
Das Endergebnis ist dann leider auch nicht korrekt, obwohl im Log scheinbar simmen sollte?
Ausgabe Log
Ich würde mich über einen Tipp freuen.
Danke M.
1. Es wird ein Text eingelesen (Textinhalt) der Inhalt ist ein Schriftverkehr.
2. Es wird eine Stichwortliste eingelesen (KontaktNamen.txt)
Ein Schriftverkehr hat einen Absender und einen Empfänger.
Ich möchte den Absender und den Empfänger automatisch ermitteln lassen, indem ich vergleiche wer an welcher Stelle steht. Der Absender ist an erster Stelle zu finden und der Empfänger an zweiter Stelle.
Ich vergleiche in meinem Code ob der Absender vor dem Empfänger im Text kommt. Wenn ja dann wird der Empfänger übschrieben, wenn nicht, bleibt der Wert. In einer Schleife werden die Absender ständig mit neuen gefundenen Stichworten belegt.
Leider habe ich in der Schleife irgendwo ein Problem, da sich diese scheinbar unnötig wiederholt.
Das Endergebnis ist dann leider auch nicht korrekt, obwohl im Log scheinbar simmen sollte?
Java:
FileReader stichwortLeser = new FileReader(datei.getPfadStichworte() + "/KontaktNamen.txt");
BufferedReader stichwortListe = new BufferedReader(stichwortLeser);
// Schleife zum Einlesen der S
IndexLogger.info("*** Abender und Empfaenger suchen ***");
while ((stichwort = stichwortListe.readLine()) != null) {
if (datei.getDateiInhalt().contains(stichwort)) {
kontaktA = stichwort;
kontaktStelleA = datei.getDateiInhalt().indexOf(stichwort);
IndexLogger.info("Stichwort " + stichwort + " wird Absender von Stelle " + kontaktStelleA +" zugewiesen");
if (kontaktE == "") {
kontaktE = kontaktA;
kontaktStelleE = kontaktStelleA;
IndexLogger.info("Der Empfaenger ist leer, " + kontaktE + " wird von Stelle " + kontaktStelleE + " zugewiesen");
} // if
} // if
if (kontaktStelleA < kontaktStelleE) {
kontakt.setAbsender(kontaktA);
kontakt.setEmpfaenger(kontaktE);
IndexLogger.info("Empfaenger ist VOR DEM Absender");
IndexLogger.info("Der Absender ist : " + kontakt.getAbsender() + " von Stelle " + kontaktStelleA);
IndexLogger.info("Der Empfaenger ist : " + kontakt.getEmpfaenger() + " von Stelle " + kontaktStelleE);
}
else {
kontakt.setAbsender(kontaktE);
kontakt.setEmpfaenger(kontaktA);
} // if
} // ende Schleife zum Einlesen der Stichworte
// Schliessen des Readers
stichwortListe.close();
System.out.println("Der Absender ist : " + kontakt.getAbsender());
System.out.println("Der Empfänger ist : " + kontakt.getEmpfaenger());
Code:
*** Abender und Empfaenger suchen ***
Stichwort Toni wird Absender von Stelle 454 zugewiesen
Der Empfaenger ist leer, Toni wird von Stelle 454 zugewiesen
Stichwort Mareike wird Absender von Stelle 2534 zugewiesen
Stichwort Ella wird Absender von Stelle 107 zugewiesen
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Empfaenger ist VOR DEM Absender
Der Absender ist : Ella von Stelle 107
Der Empfaenger ist : Toni von Stelle 454
Stichwort Mareike wird Absender von Stelle 2534 zugewiesen
Stichwort Toni wird Absender von Stelle 454 zugewiesen
Der Absender ist : Toni
Der Empfänger ist : Toni
Danke M.