C# Streamwriter,删除找到特定字符的整行

C# Streamwriter,删除找到特定字符的整行,c#,list,C#,List,也许我想得太多了。我有一种工作方法,可以写入文本文件并从中读取 写作: public void SaveNotes() { using (StreamWriter save= new StreamWriter("notes.txt", true)) { foreach (var element in collection) { spara.Write(element.Prio+ " " + el

也许我想得太多了。我有一种工作方法,可以写入文本文件并从中读取

写作:

public void SaveNotes()
{
    using (StreamWriter save= new StreamWriter("notes.txt", true))
    {               
        foreach (var element in collection)
        {
            spara.Write(element.Prio+ " " + element.Note+ "\n");
        }
    }
}
现在我正试图设计一个方法来查找列表中的任何
'0'
,并覆盖整行

有没有更简单的方法告诉程序所有包含
'0'
的行都应该用空格覆盖?非常感谢您的任何意见

public static void Delete(Note note)
{         
    using (StreamWriter remove = new StreamWriter("notes.txt"))
    {
        Regex rgx = new Regex("");
        foreach (var element in collection)
        {       
            while (element.Notering.Contains("0"))
            {
                rgx.Replace(element.Note, "");   
                rgx.Replace(element.Prio, "");
            }
        }
    }
}

你为什么不把它们两个结合起来呢

public void SaveNotes()
{
    using (StreamWriter save= new StreamWriter("notes.txt", true))
    {               
        foreach (var element in collection)
        {
            if (element.Prio.IndexOf('\0') < 0 && element.Note.IndexOf('\0') < 0)
                spara.Write(element.Prio+ " " + element.Note+ "\n");
            else spara.Write(" \n");
        }
    }
}
public void SaveNotes()
{
使用(StreamWriter save=newstreamwriter(“notes.txt”,true))
{               
foreach(集合中的var元素)
{
if(element.Prio.IndexOf('\0')<0&&element.Note.IndexOf('\0')<0)
spara.Write(element.Prio+“”+element.Note+“\n”);
else spara.Write(“\n”);
}
}
}

foreach(集合中的var元素。其中(c=>c.Notering.Contains(“0”))
?我不理解这个要求。你在哪里绕线?您没有使用
StreamWriter
StreamReader
,您没有使用传递的参数
Note
,并且不清楚
集合是什么。通常,如果要替换/删除一行,请使用剩余的行重写整个文件。