Autor Beitrag
c#_yo
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mo 20.06.11 21:32 
Hallo liebe Community,
wie der Titel schon sagt, habe ich ein Problem eine Zeile in einer Textdatei zu löschen, bei der ein bestimmtes Wort vorkommt (z.B.: Test).

Bei mir schaut das ganze so aus, dass ich auf einen Button ("Löschen") klicke und dann soll die Zeile gelöscht werden, wo dieses Wort vorkommt.

hier mein Code:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
private void button4_Click(object sender, RoutedEventArgs e)
        {
            StreamReader datei = new StreamReader(Pfad);
            string[] lines = { datei.ToString() };
            datei.Close();
            System.IO.File.WriteAllLines(Pfad, lines);

            using (System.IO.StreamWriter file = new System.IO.StreamWriter(Pfad))
            {
                foreach (string line in lines)
                {
                    if (line.Contains("Test") == false)
                    {
                        file.WriteLine(line);
                    }
                }
            }
 
        }


Bei mir steht dann in der Datei: System.IO.StreamReader


Wäre nett, wenn mir einer weiterhelfen kann!

LG

Moderiert von user profile iconKha: Quote- durch C#-Tags ersetzt
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19312
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 20.06.11 22:25 
Das Problem ist datei.ToString(). Das gibt standardmäßig eben den Namen der Klasse zurück, es sei denn die Klasse hat eine spezielle Behandlung dafür implementiert.

Was du suchst ist wohl eher File.ReadAllLines. ;-)
c#_yo Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Di 21.06.11 17:22 
user profile iconjaenicke hat folgendes geschrieben Zum zitierten Posting springen:
Das Problem ist datei.ToString(). Das gibt standardmäßig eben den Namen der Klasse zurück, es sei denn die Klasse hat eine spezielle Behandlung dafür implementiert.

Was du suchst ist wohl eher File.ReadAllLines. ;-)


Danke für die Antwort! Nun funktioniert es!