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
,并且不清楚集合是什么。通常,如果要替换/删除一行,请使用剩余的行重写整个文件。