C# 如何按行号从文本文件中删除一行?是否按索引号从ListView中删除项目?
ListView控制变量是lvnf。 文本文件存储在变量emailsIDSFile中。 用于删除文本文件中的行号并通过索引删除列表视图中的行的索引号存储在selectedemailindex中。C# 如何按行号从文本文件中删除一行?是否按索引号从ListView中删除项目?,c#,.net,winforms,C#,.net,Winforms,ListView控制变量是lvnf。 文本文件存储在变量emailsIDSFile中。 用于删除文本文件中的行号并通过索引删除列表视图中的行的索引号存储在selectedemailindex中。List lines=file.ReadAllLines(“c:\\a.txt”).ToList()中; private void btnDel_Click(object sender, EventArgs e) { OpenPop.Pop3.Pop3Client
List lines=file.ReadAllLines(“c:\\a.txt”).ToList()中;
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).
}
行。删除(行号);
Listview1.Items.RemoveAt(行号);
List line=File.ReadAllLines(“c:\\a.txt”).ToList();
行。删除(行号);
Listview1.Items.RemoveAt(行号);
我建议使用简单的Linq:
然后,您可能需要阅读以下几行:
var lines = File
.ReadLines("@c:\MyText.txt")
.Where((line, index) => index != lineNumber);
将它们写回一个文件
foreach (var line in lines) {
...
}
至于ListView
,RemoveAt
似乎是您正在寻找的:
File.WriteAllLines(@"C:\MyOther.txt", lines);
另外,问题中的代码似乎与问题完全无关。我建议使用一个简单的Linq:
然后,您可能需要阅读以下几行:
var lines = File
.ReadLines("@c:\MyText.txt")
.Where((line, index) => index != lineNumber);
将它们写回一个文件
foreach (var line in lines) {
...
}
至于ListView
,RemoveAt
似乎是您正在寻找的:
File.WriteAllLines(@"C:\MyOther.txt", lines);
另外,问题中的代码似乎与问题完全无关。什么文本文件?什么是列表视图?你试过什么,有什么问题?什么文本文件?什么是列表视图?你试过什么,你有什么问题?