将控制台输出写入文件

4

我对这个领域很陌生,我已经阅读了这里的答案并且有所帮助,但是我还是遇到了一些困难。

我已经成功地创建了一个程序,可以从输入的出生日期显示用户的星座。

现在我想要将结果发送到一个文本文件中。我能够创建文件,但是我不知道如何将控制台输出/程序结果发送到文件中。


欢迎来到SO。可能存在重复问题:https://dev59.com/-XVD5IYBdhLWcg3wL4YA?rq=1 https://dev59.com/4HRC5IYBdhLWcg3wD83r?rq=1 - Rotem
2个回答

7
Console.WriteLine("Hello World");
FileStream fs = new FileStream("Test.txt", FileMode.Create);
// First, save the standard output.
TextWriter tmp = Console.Out;
StreamWriter sw = new StreamWriter(fs);
Console.SetOut(sw);
Console.WriteLine("Hello file");
Console.SetOut(tmp);
Console.WriteLine("Hello World");
sw.Close();

http://msdn.microsoft.com/en-us/library/system.console.setout.aspx


3
从技术上讲,每次写操作都加倍是正确的,但很快就会变得难以管理。一个更可行的方法是要么在最后构建一个大字符串来输出并将其写出两次,要么编写一个能够将输出复用到多个流的类。 - Sean McSomething

1

1
+1:这很可能是解决问题本身的正确方法,但并不是对OP问题的直接回答。 - Alexei Levenkov

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接