可以使用Console.Clear仅清除一行而不是整个控制台吗?

在为学校设计问题/答案程序时,我想到可以Console.Clear()擦除屏幕上的所有内容。我想知道我是否可以使用Console.Readline(valueOne),然后只输出答案而没有问题。如果我只问一个问题,那就行了Console.Clear

我有几个问题,它们的值不参考,如果可能的话,要消除。我想省略问题,只显示几个答案。我认为,如果我存储答案,则可以Console.Clear()Console.WriteLine()使用三个变量。我可以做这样的事情:

Console.WriteLine("Value 1 is: {0:c}" + "Value 2 is: {1:c}" + "Value 3 is: {2:c}, valueOne, valueTwo, valueThree).

使用引用更容易解决问题,因为可以存储和检索值。如果我仅使用方法传递值并输出值,main()则不会引用这些值来清除并再次输出。这就是为什么我想问我是否可以问一个问题,然后删除一行并仅输出答案的原因。

我只是想了解可能性,而不是尝试设置程序。我想知道从参考值和按值输出值的能力,而无需额外的输出问题。

回答:

描述

您可以使用该Console.SetCursorPosition功能转到特定的行号。比起您可以使用此功能清除线

public static void ClearCurrentConsoleLine()

{

int currentLineCursor = Console.CursorTop;

Console.SetCursorPosition(0, Console.CursorTop);

Console.Write(new string(' ', Console.WindowWidth));

Console.SetCursorPosition(0, currentLineCursor);

}

样品

Console.WriteLine("Test");

Console.SetCursorPosition(0, Console.CursorTop - 1);

ClearCurrentConsoleLine();

更多信息

  • Console.SetCursorPosition方法

以上是 可以使用Console.Clear仅清除一行而不是整个控制台吗? 的全部内容, 来源链接: utcz.com/qa/433671.html

回到顶部