C#如何在文本文件中写入多行?

C#如何在文本文件中写入多行?,c#,file,text,lines,C#,File,Text,Lines,我试图按下一个按钮,从textbox4和textbox5获取文本,将其写入文本文件。但是,当我再次按下它向文本文件添加新信息时,它只是用新的文本替换旧的文本。如何让它在每次按下按钮时都在第一行下方再写一行 这是我目前掌握的代码 private void button5_Click(object sender, EventArgs e) { try { xuidspath = @"c:\xuids.txt";

我试图按下一个按钮,从textbox4和textbox5获取文本,将其写入文本文件。但是,当我再次按下它向文本文件添加新信息时,它只是用新的文本替换旧的文本。如何让它在每次按下按钮时都在第一行下方再写一行

这是我目前掌握的代码

    private void button5_Click(object sender, EventArgs e)
    {
        try
        {
            xuidspath = @"c:\xuids.txt";
            ListViewItem lvi = new ListViewItem();
            lvi.Text = textBox4.Text;
            lvi.SubItems.Add(textBox5.Text);
            listXuid.Items.Add(lvi);
            TextWriter xuids = new StreamWriter(xuidspath);
            xuids.WriteLine(textBox4.Text + "-" + textBox5.Text);
            textBox5.Clear();
            textBox4.Clear();
            xuids.Close();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
    }

有什么想法吗?

只需使用StringBuilder类和File.WriteXXX方法

StringBuilder sb = new StringBuilder();
sb.AppendLine(textBox.Text + " " + textbox2.Text);

File.WriteAllText("c:\xuids.txt",sb.ToString();

只需使用StringBuilder类和File.WriteXXX方法

StringBuilder sb = new StringBuilder();
sb.AppendLine(textBox.Text + " " + textbox2.Text);

File.WriteAllText("c:\xuids.txt",sb.ToString();

打开要追加的文件

FileStream xuids = new FileStream(xuidspath, FileMode.Append);

打开要追加的文件

FileStream xuids = new FileStream(xuidspath, FileMode.Append);
使用重载:

public StreamWriter(string path, bool append);
i、 e

使用重载:

public StreamWriter(string path, bool append);
i、 e

更改:

TextWriter xuids = new StreamWriter(xuidspath);
致:

第二个参数是append。从MSDN():

确定是否将数据附加到文件。如果文件 exists且append为false,文件被覆盖。如果文件 如果存在且append为true,则将数据追加到文件中。 否则,将创建一个新文件

更改:

TextWriter xuids = new StreamWriter(xuidspath);
致:

第二个参数是append。从MSDN():

确定是否将数据附加到文件。如果文件 exists且append为false,文件被覆盖。如果文件 如果存在且append为true,则将数据追加到文件中。 否则,将创建一个新文件


请确保至少包含一个语言标记,以便能够提供帮助的人能够轻松找到您的问题。请确保至少包含一个语言标记,以便能够提供帮助的人能够轻松找到您的问题。我认为这无法解决原始问题,除非StringBuilder本身之前加载了文件内容追加新行。我认为这无法解决原始问题,除非在追加新行之前,StringBuilder本身加载了文件内容。虽然此代码示例可能会回答此问题,但最好对您的答案进行一些必要的解释。现在看来,这个答案对未来的读者来说几乎没有什么价值。虽然这个代码示例可能回答这个问题,但最好对您的答案进行一些必要的解释。现在看来,这个答案对未来的读者几乎没有任何价值。