将 Visual C++ 控制台输出复制(不重定向)到文本文件,同时仍在控制台窗口中查看输出

Posted

技术标签:

【中文标题】将 Visual C++ 控制台输出复制(不重定向)到文本文件,同时仍在控制台窗口中查看输出【英文标题】:Copying (not redirecting) Visual C++ console output to text file while still viewing the output in console window 【发布时间】:2015-10-16 17:09:04 【问题描述】:

已就这个问题提出了各种各样的问题并得到了回答 https://***.com/a/21709463/3906864

我按照上面链接的答案做了以下操作

">log.txt"

该参数已添加到此处

这允许控制台输出从控制台重定向到文件,并且控制台窗口保持空白,其中不显示任何内容。

但我找不到在控制台中查看输出同时仍将副本保存到 txt 文件的方法。 有什么想法吗?

【问题讨论】:

一种方法是编写一个替换cout(或cerr)的“tee”。您可以通过编写自己的 ostreamrdbuf 来做到这一点。提示here 【参考方案1】:

您需要tee 的版本。 Powershell有Tee-Object(https://technet.microsoft.com/en-us/library/hh849937.aspx)

链接示例

get-process | tee-object -filepath C:\Test1\testfile2.txt

以上将输出到终端和文件

【讨论】:

以上是关于将 Visual C++ 控制台输出复制(不重定向)到文本文件,同时仍在控制台窗口中查看输出的主要内容,如果未能解决你的问题,请参考以下文章

为啥下面的系统调用输出不重定向到文件?

可以将 std::cout 重定向到开箱即用的 Visual Studio 2010 C++ 中的输出视图吗?

将命令提示符输出重定向到 Visual Studio 2012 中的输出窗口

运行时的 exec() 方法不重定向输出

jquery:更改URL地址而不重定向? [复制]

如何在 Visual Studio C++ 中将西里尔文(俄语)字符输出到控制台?