Laden...

Forenbeiträge von Padman Ingesamt 52 Beiträge

03.07.2015 - 00:35 Uhr

Und hat sich inzwischen schon etwas getan oder schon zum Testen?

02.07.2015 - 22:54 Uhr

Hallo,
leider bin ich Anfänger was dieses Thema betrifft, obwohl ich bisher dank des Internet dennoch kleine, einfache Anwendungen schreiben konnte. Leider fand ich zu diesem Problem keine Lösung.

Vorwort
Eine Datei soll geöffnet, mehrere Werte sollen gesucht und passend in Textboxen angezeigt werden. Ich konnte zwar im Netz ein Schnippsel finden was dieses im Prinzip macht und dieses zwar etwas umstricken, aber das Problem ist, dass die Datei vier mal geöffnet, gelesen und geschlossen werden muss, damit das Vorhaben überhaupt möglich ist.

Kurzfassung*Suchen: <BEISPIEL_1>Wert 1</BEISPIEL_1> <BEISPIEL_2>Wert 2</BEISPIEL_2> <BEISPIEL_3>Wert 3</BEISPIEL_3><BEISPIEL_4>Wert 4</BEISPIEL_4> *Ausgabe zu je einer Textbox *Datei-Öffnen-Dialog soll später eingebaut werden

Hier ein Auszug des umgebauten Schnippsel

/* <BEISPIEL_1> */
                StreamReader streamReader_BEISPIEL_1 = new StreamReader(FileName);
                string BEISPIEL_1 = streamReader_BEISPIEL_1.ReadToEnd();
                ICollection<string> matches_BEISPIEL_1 = Regex.Matches(BEISPIEL_1.Replace(Environment.NewLine, ""), @"\<BEISPIEL_1.*?\>(.*?)\</BEISPIEL_1\>")
                .Cast<Match>()
                .Select(x_BEISPIEL_1 => x_BEISPIEL_1.Groups[1].Value)
                .ToList();
                foreach (string match_PRODUCT_NAME in matches_BEISPIEL_1)
                    textBoxBEISPIEL_1.Text = (match_BEISPIEL_1);
                streamReader_BEISPIEL_1.Close();
                /* </BEISPIEL_1> */

/* <BEISPIEL_2> */
                StreamReader streamReader_BEISPIEL_2 = new StreamReader(FileName);
                string BEISPIEL_2 = streamReader_BEISPIEL_2.ReadToEnd();
                ICollection<string> matches_BEISPIEL_2 = Regex.Matches(BEISPIEL_2.Replace(Environment.NewLine, ""), @"\<BEISPIEL_2.*?\>(.*?)\</BEISPIEL_2\>")
                .Cast<Match>()
                .Select(x_BEISPIEL_2 => x_BEISPIEL_2.Groups[1].Value)
                .ToList();
                foreach (string match_PRODUCT_NAME in matches_BEISPIEL_2)
                    textBoxBEISPIEL_2.Text = (match_BEISPIEL_2);
                streamReader_BEISPIEL_2.Close();
                /* </BEISPIEL_2> */

/* [Abschnitte wiederholen sich insgesamt vier mal] */

Mein Gedanke: Datei nur noch einmal öffnen, und zum Beispiel 4 Werte aus einer Datei suchen und getrennt in Textboxen anzeigen und schließen. Die Datei soll später auch manuell zum lesen per Öffnen-Dialog geladen werden können. Ich hatte zwar schon einiges probiert, aber ich steige leider nicht durch. Die zu ladende Datei ist eine "Misch-Datei" welche irgendwann auch XML-Daten enthält.

Über Lösungsvorschläge bin ich euch sehr dankbar 🙂