每次程序运行时创建一个新文件

时间:2014-04-28 20:50:16

标签: c#

在每个循环中,我正在添加到我的文件中,如下所示:

    using (StreamWriter sw = File.AppendText(path))
    {
        StringBuilder builder = new StringBuilder();
        builder.Append(LastName.Trim()).Append("\t");
        // more stuff

但每次用户运行程序时,我都希望从头开始创建该文件。目前它正在创建文件,如果它不存在 - 这很好 - 但它也附加到以前创建的文件的末尾。

4 个答案:

答案 0 :(得分:3)

您正在使用File.AppendText - 您的期望是什么?

如果您想在每次运行时覆盖该文件,请改用File.Create

答案 1 :(得分:2)

您可以使用以下命令创建Tempfile:

Path.GetTempFileName()

并将所有文件名存储在一个不会更改的中央文件中。

答案 2 :(得分:1)

而不是using (StreamWriter sw = File.AppendText(path))

尝试using (StreamWriter sw = new StreamWriter("fileName.txt"))

你正在追加而不是创造新的东西/覆盖那里的东西。

答案 3 :(得分:1)

您可以使用TextWriter

// Create file a single time
using (TextWriter writer = File.CreateText(path)) 
{
    for (int i = 0; i < iterations; i++)
    {
        // Add content to the file inside the loop
        writer.Write(LastName.Trim());
        //etc...
    }       
}