如何按行号从文本文件中删除一行?并按索引号从列表视图中删除项目
本文关键字:索引 列表 删除项目 视图 一行 文件 文本 何按行 删除 | 更新日期: 2023-09-27 18:36:16
private void btnDel_Click(object sender, EventArgs e)
{
OpenPop.Pop3.Pop3Client PopClient = new OpenPop.Pop3.Pop3Client();
PopClient.Connect("mail", 110, false);
PopClient.Authenticate("me", "me",
OpenPop.Pop3.AuthenticationMethod.UsernameAndPassword);
DeleteMessageByMessageId(PopClient, selectedemailindex.ToString());
// Here i want to update the text file and the listview by deleting the line using the index number(selectedemailindex).
}
ListView 控件变量为 lvnf。并且文本文件存储在变量电子邮件IDSFile中。用于删除文本文件中的行号和按索引删除 ListView 中的行的索引号存储在 selectedemailindex 中。
List<string> lines = File.ReadAllLines("c:''a.txt").ToList();
lines.RemoveAt(linenumber);
Listview1.Items.RemoveAt(linenumber);
我建议使用一个简单的Linq:
var lines = File
.ReadLines("@c:'MyText.txt")
.Where((line, index) => index != lineNumber);
然后,您可能需要阅读以下行:
foreach (var line in lines) {
...
}
将它们写回文件中
File.WriteAllLines(@"C:'MyOther.txt", lines);
至于ListView
,您似乎正在寻找RemoveAt
:
MyListView.Items.RemoveAt(lineNumber);
附言您在问题中的代码似乎与问题完全无关。