首次加载表单时,会创建一个文件夹
System.IO.Directory.CreateDirectory("Z:/Daniel/AccountInfo");
每当在程序中创建帐户时,都会在此位置创建一个文件
FileStream createAccountFile = new FileStream("Z:/Daniel/AccountInfo/" + lastNameBox.Text + "_" + firstNameBox.Text + ".txt", FileMode.CreateNew);
每当点击程序上的按钮时,文本都会附加到accountInfoText
,并且其中的所有文本现在都会附加到上面创建的相同位置。
string addInfo = DateTime.Now.ToString("M/d/yyyy") + " - Email - Too Soon" + Environment.NewLine;
accountInfoText.AppendText(addInfo);
File.AppendAllText("Z:/Daniel/AccountInfo/" + lastNameInfoBox.Text + "_" + firstNameInfoBox.Text + ".txt", accountInfoText.Text);
每当组合框accountComboBox
的索引发生变化时,之前写入的文件内部的所有文本现在都在accountInfoText
string accountInfo = System.IO.File.ReadAllText("Z:/Daniel/AccountInfo/" + lastNameInfoBox.Text + "_" + firstNameInfoBox.Text + ".txt");
accountInfoText.Text = accountInfo;
问题是,在我按下执行追加的按钮后,当我继续从accountComboBox
中选择一个不同的帐户时,accountInfoText
内部和实际文本文件内部的文本会加倍。我无法看到触发它的原因。
感谢您的帮助!
答案 0 :(得分:0)
你追加两次:
addInfo
首先,您将accountInfoText
附加到accountInfoText
,然后将addInfo
添加到您的文件中。由于该文件已经包含旧的accountInfoText
,因此addInfo
也是如此。所以它增加了一倍。
编辑:您可能只想将File.AppendAllText("Z:/Daniel/AccountInfo/" + lastNameInfoBox.Text + "_" + firstNameInfoBox.Text + ".txt", addInfo);
添加到文件中:
def require_admin
redirect_to '/' unless current_user.admin
end