在 C# 中构建 Windows 控制台应用程序时,是否可以写入控制台而无需扩展当前行或转到新行?例如,如果我想显示一个百分比来表示进程距离完成有多近,我只想更新与光标在同一行的值,而不必将每个百分比都放在新行上。
这可以通过“标准”C# 控制台应用程序来完成吗?
如果您只打印"\r"到控制台,光标会回到当前行的开头,然后您可以重写它。这应该可以解决问题:
"\r"
for(int i = 0; i < 100; ++i) { Console.Write("\r{0}% ", i); }
注意数字后面的几个空格,以确保删除之前的任何内容。 还要注意使用Write()而不是,WriteLine()因为您不想在行尾添加“\n”。
Write()
WriteLine()