如何在按钮单击时删除.text文件中的某些单词?

时间:2013-10-19 20:39:37

标签: c# file-io

我要做的是从.text文件中删除某些文本。例如:

我有一个带有以下文字的.text文件。

Hello
This
Is <----- I would like to delete this line from the file.
My
Text

我尝试使用以下代码:

    private void DeleteButton2_Click(object sender, EventArgs e)
    {
        if (comboBox2.SelectedItem == "")
        {
            MessageBox.Show("Please Select a Contact.");
        }
        else
        {

            comboBox2.Items.Remove(comboBox2.SelectedItem);
            comboBox1.Items.Remove(comboBox2.SelectedItem);
            File.Delete(comboBox2.SelectedItem + ".txt");
            string SelectedItem = comboBox2.SelectedItem.ToString();
            string empty = "";
           string Readcurrentcontacts = File.ReadAllText(contactpath);
           Readcurrentcontacts.Replace(SelectedItem, empty);
        }
    }

没有成功的结果。如果您需要任何进一步的信息,请告诉我!提前谢谢!

1 个答案:

答案 0 :(得分:1)

File.ReadLinesFile.WriteAllLines方法在这里很有用:

string SelectedItem = comboBox2.SelectedItem.ToString();

var allLines = File.ReadLines(contactpath)

// Linq filter to exclude selected item
var newLines = allLines.Where(line => line != SelectedItem);

File.WriteAllLines(contactpath, newLines);

请注意,Where是一个Linq扩展方法,它将IEnumerable作为输入,并根据您提供的谓词返回一个子集。因此,上面的行接受输入(文件中的所有行),并返回所有不等于SelectedItem的行。