我在一个小捏:)Console.Writeline C# - 登录
时,我发现了一个很奇怪的行为,我想不出有什么可能是它的原因失去STDOUT。
它在C#Visual Studio来控制台记录相关2008
例如,命令行的正常行为是:
1)如果我使用的 “DIR” 指令i见目录的内容
2)如果我使用“dir> 1.txt”,我得到 1.txt文件中的目录内容。
所以这是正常的行为,它的工作原理。现在回到我的问题。
在我使用的c#应用程序中,我有一个测试列表,我想列出他们,当我从命令行使用我的应用程序。所以我有:
Console.WriteLine("Start running " + sn);
结果当我运行的应用程序通常是:(命令我送)
Application.exe -run 1.test,2.test,3.test
输出:
Start running 1.test
Start running 2.test
Start running 3.test
,但如果我用这个命令:
Application.exe -run 1.test,2.test,3.test > 1.txt
三个开始运行命令从标准输出消失,但1.txt是空白。
我不知道响应的位置,我没有办法记录响应,但我可以直观地看到它。但是当我将STDOUT重定向到日志时,它既不在视觉上也不在日志中。
任何人有什么想法?
您可能必须使用cmd.exe:'cmd.exe“Application.exe -run args”> 1.txt'进行换行。 –