无法在文本文件中编写控制台输出

时间:2015-03-25 13:03:54

标签: c# .net file

我想在文本文件中编写控制台输出。这是我的代码。

String filePath = "C:/Users/User/Desktop/New folder/";
            String fileName = "newop.txt";
            if (!File.Exists(filePath + fileName))
            {
                File.Create(filePath + fileName).Dispose();

                using (StreamWriter sr = new StreamWriter(filePath + fileName, false))
                {

                    sr.WriteLine(currLink.Url);
                }
            }
            Console.WriteLine(currLink.Url);
            ie.Element("button_next").Click();

        }

1 个答案:

答案 0 :(得分:1)

您想要的代码是:

String filePath = "C:\Users\User\Desktop\New folder";
String fileName = "newop.txt";
using (StreamWriter sr = new StreamWriter(Path.Combine(filePath, fileName), true))
{
    sr.WriteLine(currLink.Url);
}
ie.Element("button_next").Click();

每次调用它时都会附加到文件中。

如果要在程序开头重置文件,请使用以下代码:

File.WriteAllText(Path.Combine(filePath, fileName), string.Empty);

这将为您创建一个空文件。

您在问题中使用的其余代码执行以下操作:

  1. 只运行一次,当文件不存在时,下次当文件 存在时,写入文件的代码不再运行(if (!File.Exists...)< / LI>
  2. 每次创建一个空文件(File.Create(....
  3. 在使用StreamWriter打开文件时会覆盖该文件(对构造函数的调用中为, false
  4. 没有必要这样做,只需要让StreamWriter打开文件进行写入,如果存在(, true)则附加,并写入。如果文件存在,请删除检查,删除对File.Create的调用,或者如果要在某个时刻重置文件,请移动它。