C# Dictionary <string, string>
Hallo,
ich habe ein kleines Problem mit meinem Übersetzungsprogramm. Ich lese 2 Dateien ein und die sollen beide in Listen angegeben werden. Der Schlüssel bleibt gleich nur die Werte ändern sich (einmal auf Englisch, einmal auf Deutsch). Die erste Datei ist Englisch und das funktioniert auch. Ich habe, wenn das Programm durch gelaufen ist, 321 Einträge in der Liste. Wenn ich dann mit der deuten Übersetzung weiter mache, läuft er zwar durch und macht auch alles so wie es soll, nur am Ende kommen keine deutschen Werte hinzu. Sprich er hat weiterhin nur die englische Übersetzung und keine deutschen Werte.
Bin noch in der Ausbildung, und mein Ausbilder meinte das wäre sehr einfach, aber ich finde einfach keinen Fehler, warum er es nicht so macht wie es soll.
Bild vom Quellcode im Anhang. (Die grünen Kommentare bitte ignorieren)
Hoffe ihr könnt mir helfen.
1 Antwort
Dein Ausbilder hat recht. Es ist ein sehr einfacher Fehler. Wenn du schrittweise den Code durchgehst (entweder im Kopf oder per debugging) wirst du es schnell erkennen.
Zu jedem Wort soll es mehrere Übersetzungen geben. Dafür ist ja dein Dictionary im Dictionary gedacht, es speichert die Übersetzungen für das Wort. In deinem Fall Englisch und Deutsch. Schau dir den Block an, in dem die Übersetzung eingefügt wird. Der Code wird nur ausgeführt wenn das Wort noch nicht in der Liste ist (und es damit noch keine Übersetzung gibt). Beim zweiten Ausführen ist das Wort aber schon in der Liste. Lediglich die zweite Übersetzung muss dann in das bestehende Dictionary eingefügt werden