我有一部分控制台需要不断更新不同行数的值。我知道 Console.Write(new string(' ', Console.WindowWidth)) 但这仅适用于一行。我有一定的行,必须从那里开始清理并向下到达底部。顶部必须保持不变。是否有一个简单的命令,例如我必须使用循环/计数器的前一个命令?
最佳答案
我建议使用 Console.Clear() 然后重写您希望保持不变的行。您还可以使用 Console.SetCursorPosition 然后覆盖要清除的行:
// Clear method
Console.WriteLine("Line1");
Console.WriteLine("Line2");
Console.WriteLine("Line3 to erase");
Console.Clear();
Console.WriteLine("Line1");
Console.WriteLine("Line2");
// SetCursorPosition method
Console.WriteLine("Line1");
Console.WriteLine("Line2");
Console.WriteLine("Line3 to erase");
Console.SetCursorPosition(0, 2);
Console.WriteLine(" ");
清除/重写方法通常更快,除非您每秒多次写入文本,否则您不应该看到任何闪烁。
关于c# - 有没有办法清除控制台的某个部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15030498/