倒带 std::cout 回到行首

2021-12-06 00:00:00 macos stdout terminal output-formatting c++

我正在为 Mac OS X 编写一个命令行工具来处理一堆文件.我想向用户展示当前正在处理的文件,但不希望大量文件污染终端窗口.

I'm writing a command-line tool for Mac OS X that processes a bunch of files. I would like to show the user the current file being processed, but do not want a bazillion files polluting the terminal window.

相反,我想使用一行来输出文件路径,然后将该行重复用于下一个文件.是否有一个字符(或其他一些代码)输出到 std::cout 来完成这个?

Instead I would like to use a single line to output the file path, then reuse that line for the next file. Is there a character (or some other code) to output to std::cout to accomplish this?

另外,如果我想将此工具重新定位到 Windows,两个平台的解决方案是否相同?

Also, if I wanted to re-target this tool for Windows, would the solution be the same for both platforms?

推荐答案

"" 应该适用于 Windows 和 Mac OS X.

"" should work for both windows and Mac OS X.

类似于:

std::cout << "will not see thiswill see this" << std::flush;
std::cout << std::endl; // all done

相关文章