我试图逐行读取文本文件并使用分隔符,拆分文本并将其插入列表视图中的三列。每次我点击一个按钮,都必须实现读取功能。但是当我点击按钮两次时,我得到重复的值。我该如何解决这个问题?我是c#
的初学者文件中的文字
ABC DEF * * GHI
JKL * MNO * PQR
列表视图中的输出
ABC | DEF | GHI
JKL | MNO | PQR
ABC | DEF | GHI
JKL | MNO | PQR
.Replace("\r\n")
答案 0 :(得分:0)
当您两次点击按钮时,以下行重复两次:
listView1.Items.Add(lv);
您需要在函数开头重新创建对象listView1,或者需要在开始时清除它。
答案 1 :(得分:0)
在向其添加项目之前,只需清除ListView,以便下次单击该按钮时,已清除已添加的项目。
public void read(string destinination)
{
Form1 f1 = new Form1();
StreamReader sw = File.OpenText(destinination);
string s = "";
ListView1.Item.Clear();
try
{
while ((s = sw.ReadLine()) != null)
{
string[] words = s.Split('*');
ListViewItem lv = new ListViewItem(words[0].ToString());
lv.SubItems.Add(words[1].ToString());
lv.SubItems.Add(words[2].ToString());
listView1.Items.Add(lv);
}
}
catch ( Exception ex)
{
Console.WriteLine(ex);
}
sw.Close();
}