0

所以我有这个应用程序,其中有 3 个文本框要求用户输入。当用户完成填充 texboxes 时,会有一个按钮将输入存储到一个类中。

现在的想法是,当用户按下按钮将输入存储到一个类时,输入也会存储到一个文本文件中。我现在面临的问题是,每当用户添加新输入时,文本文件中的旧输入都会被替换。

这是代码:

using (StreamWriter txtFile = new StreamWriter(@"C:\Users\Desktop\smtp.txt"))
{
    txtFile.WriteLine(Class_Smtp[Index].SmtpClientName);
    txtFile.WriteLine(Class_Smtp[Index].SmtpPort);
    txtFile.WriteLine(Class_Smtp[Index].SmtpEmailExtension + Environment.NewLine);
}

有任何想法吗?

先感谢您。

4

2 回答 2

1

您应该附加文本

using (StreamWriter txtFile = new StreamWriter(@"C:\Users\Desktop\smtp.txt", true))
{
    txtFile.WriteLine(Class_Smtp[Index].SmtpClientName);
    txtFile.WriteLine(Class_Smtp[Index].SmtpPort);
    txtFile.WriteLine(Class_Smtp[Index].SmtpEmailExtension + Environment.NewLine);
}
于 2013-09-20T10:07:46.380 回答
1

使用StreamWriter接受 bool 参数的构造函数覆盖来告诉它是追加还是替换,并传递true

public StreamWriter(string path, bool append)

对于您的示例:

using 
(
    StreamWriter txtFile = new StreamWriter
    (
        @"C:\Users\Desktop\smtp.txt", 
        true // <=== This parameter tells it to append
    )
)
于 2013-09-20T10:08:55.727 回答