如何在 C# 中将多个文本框中的数据保存到文件 (.txt)

本文关键字:数据 存到文件 txt 文本 | 更新日期: 2023-09-27 18:28:49

private void AddUserSubmitButton_Click(object sender, EventArgs e)
    {
        try
        {
            FileStream AddUserData = new FileStream("AddUser.txt", FileMode.OpenOrCreate);
            using (StreamWriter AddUserDataWrite = new StreamWriter(AddUserData))
            {
                AddUserDataWrite.Write(DisplayNameTextBox + "'r'n");
                AddUserDataWrite.Write(UserNameTextBox.Text + "'r'n");
                AddUserDataWrite.Write(PasswordTextBox.Text + "'r'n");
                AddUserDataWrite.Write(ConfirmPasswordTextBox.Text + "'r'n");
                AddUserDataWrite.Write(DepartmentComboBox.Text + "'r'n");
                AddUserDataWrite.Write(DesignationTextBox.Text + "'r'n");
                AddUserDataWrite.Write(BasicSalaryTextBox.Text + "'r'n");
                AddUserDataWrite.Write(JoiningDateDateTimePicker.Text + "'r'n");
                AddUserDataWrite.Write(AgreeRadioButton.Text + "'r'n");
                AddUserDataWrite.Write(FirstNameTextBox.Text + "'r'n");
                AddUserDataWrite.Write(LastNameTextBox.Text + "'r'n");
                AddUserDataWrite.Write(FatherNameTextBox.Text + "'r'n");
                AddUserDataWrite.Write(MaleRadioButton.Text + "'r'n");
                AddUserDataWrite.Write(FemaleRadioButton.Text + "'r'n");
                AddUserDataWrite.Write(CNICNumberTextBox.Text + "'r'n");
                AddUserDataWrite.Write(ContactNumberTextBox.Text + "'r'n");
                AddUserDataWrite.Write(EmailAddressTextBox.Text + "'r'n");
                AddUserDataWrite.Write(DOBDateTimePicker.Text + "'r'n");
                AddUserDataWrite.Write(ResidentialAddressTextBox.Text + "'r'n");
                AddUserDataWrite.Write(CityTextBox.Text + "'r'n");
                AddUserDataWrite.Write(CountryTextBox.Text + "'r'n");
            }                                    
        }
        catch(Exception exc)
        {
            MessageBox.Show(exc.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);                
        }
    }

这是注册表的代码。当我输入数据并单击提交按钮时,文本框中的所有数据都保存到文件"AddUser.txt"中,但是当我第二次输入数据并单击提交按钮时,数据将覆盖到同一文件"AddUser.txt"。

简单地说,每当我单击提交按钮时,我都想创建新的.txt文件,以便每个人的数据保存到单独的.txt文件中。

有什么办法吗?

如何在 C# 中将多个文本框中的数据保存到文件 (.txt)

查看从文本框获取数据 http://www.dotnetperls.com/textbox。

查看将数据保存到文件 http://msdn.microsoft.com/en-us/library/8bh11f1k.aspx。

解决方案 1:

您必须定义输入值的哪种组合使人独一无二。我假设用户名使一个人独一无二,所以也许这可能是解决方案:

 var filename = string.Format("AddUser_{0}.txt", UserNameTextBox.Text);
 FileStream AddUserData = new FileStream(filename, FileMode.OpenOrCreate);
 // code for wrting the information comes here (as you already have in your code)

这将为每个用户创建一个单独的文件。如果用户选择已存在的用户名,则以前的文件将被覆盖。因此,请确保对文件名使用用户属性的唯一组合。

解决方案 2:

还有另一种解决方案,即使用生成的唯一 ID 来创建唯一的文件名。只需在文件名中添加 UID 而不是用户名即可。见 http://msdn.microsoft.com/en-us/library/system.guid.newguid.aspx