我有一个与用户交互的控制台应用程序 (C#),每一步都通过 Console.Writeline 显示。
现在我想将这些事件写入 XML 或 TXT,我唯一的猜测是创建一个列表并将所有 Console.Writelines 添加到其中,但后来我注意到记录 Console.Readline 是强制性的,这就是我的原因我问这个问题。
如何将 Console.Reads/Console.Writes 记录到 TXT/XML?
谢谢你。
完成此操作的最简单方法是使用File.AppendAllText
打开文件,将指定的字符串附加到文件,然后关闭文件。如果文件不存在,此方法创建一个文件,将指定的字符串写入文件,然后关闭文件。
像这样的东西
string line = Console.ReadLine();
Console.WriteLine(line); // I gather you want to write it out again?
File.AppendAllText(@"C:\SomePath\MyFile.txt", line);
如果您希望先收集所有文本,然后在程序退出时将其全部写出,您可以执行以下操作:
List<string> inputLines = new List<string>();
// Loop here getting lines
string line = Console.ReadLine();
inputLines.Add(line);
// When done:
File.WriteAllLines(@"C:\SomePath\MyFile.txt", inputLines.ToArray());
看
我建议您使用log4net,它是 .net 的免费日志记录工具