繁体   English   中英

使用C#将文本框中的数据写入ASP.net中的文本文件

[英]Write data from Textbox into text file in ASP.net with C#

我有一个文本框,用户可以在其中输入他们的电子邮件,我想要做的是在单击提交按钮时创建它。 该电子邮件将保存到一个名为emails.txt的文本文件中(在我的服务器上)。

我设法使用System.IO,然后使用File.WriteAll方法使此工作正常。 但是我想这样做,以便它将电子邮件添加到列表中(在新行中),而不是仅覆盖那里已有的内容。

我见过有人提到使用Append,但是我不太了解如何使它工作。

这是我当前的代码(覆盖而不是附加)。

public partial class _Default : Page
{
    private string path = null;

    protected void Page_Load(object sender, EventArgs e)
    {
        path = Server.MapPath("~/emails.txt");
    }

    protected void emailButton_Click(object sender, EventArgs e)
    {
        File.WriteAllText(path, emailTextBox.Text.Trim());
        confirmEmailLabel.Text = "Thank you for subscribing";
    }
}

您可以使用StreamWriter来处理文本文件。 true模式下的WriteLine方法每次都会在新行中追加您的电子邮件。

using (StreamWriter writer = new StreamWriter("email.txt", true)) //// true to append data to the file
{
    writer.WriteLine("your_data"); 
}

从官方MSDN文档中

using (StreamWriter w = File.AppendText("log.txt"))
{
   MyWriteFunction("Test1", w);
   MyWriteFunction("Test2", w);
}

在附加模式下使用StreamWriter WriteLine(data)写入WriteLine(data)

using (StreamWriter writer = new StreamWriter("emails.txt", true))
{
    writer.WriteLine(email);
}

似乎是一个非常简单且容易回答的问题: 打开现有文件,添加一行

如果您发布当前代码,我们可以对其进行修改以追加而不是覆盖。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM