【问题标题】:How to move console cursor up?如何向上移动控制台光标?
【发布时间】:2013-10-25 17:34:56
【问题描述】:

我不想使用Console.SetCursorPosition。它必须简单。我的目的是反向写一些数字(从下到上),例如:

                       ...
                      4 5 6
                      1 2 3

我也无法创建箭头并将其反转。有像\n\b 这样的东西吗?

【问题讨论】:

  • Console.WriteLine("4 5 6"); Console.WriteLine("1 2 3");
  • @jonesy 不,它会从下往上写。
  • 你为什么要这样做?

标签: c# .net console


【解决方案1】:

这一行将光标向上移动一个位置:

Console.CursorTop--;

【讨论】:

    【解决方案2】:

    您有三个主要选择:

    • 把数字倒过来。即:Console.WriteLine("4 5 6"); Console.WriteLine("1 2 3");
    • 使用Console.SetCursorPosition(你提到你不想这样做)。
    • 制作自定义控件或其他机制来显示数据,这将根据需要写入数据。

    Console 类不提供任何类型的“反向换行”操作,除了手动控制光标位置。没有“backwards\n”可以使用。

    【讨论】:

    • 我猜这不可能。我不知道第一行的数字要写。将从底部开始计算。即假设计算是在一个区间之间找到素数。
    • 在开始写之前执行计算
    • @emmett 你可以表演。计算,随时将它们存储在List<string> 中,然后以相反的顺序将它们写出来,例如...
    • 正如我在问题中所说,我可以但我不能:) 我们可以将每行中的光标位置重置为 0,0 并添加新行,但仍然涉及 setcursorposition。
    • @emmett 除了设置光标位置之外,在控制台中没有其他方法可以做到这一点 - 所以你需要重新考虑你的方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-12-10
    • 2013-01-02
    • 2018-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多