C#。清除{X}行的控制台输出

时间:2013-08-16 06:45:37

标签: c# console clear

我正在尝试处理与控制台输出相关的问题。 我想保留第一行,但清除所有剩余的输出。

我找到了这个链接:ClearConsoleLine但它并不完全......

那么,是否有任何函数允许我给出一个行号(在这种情况下为第0行)清除输出的其余部分?

关于其中一条评论的

编辑:,这种解决方法当然已经使用过,它是当前状态:

        Console.Clear();
        Console.WriteLine("CURRENT WORD DOCUMENT: {0}", docPath); //line I want to keep always as first line

谢谢。

1 个答案:

答案 0 :(得分:0)

如果你不想像在另一篇文章中那样使用循环,你可以通过在一行中打印疯狂数量的空格来创建自己的“清除”功能,然后将光标移回。它在编译器中并不是特别引人注目,但你可以将它隐藏在底部,它只需要两个命令VS循环。

static void Main(string[] args)
    {
        for (int i = 0; i < 20; i++) Console.WriteLine("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
        Eraser();
        Console.ReadLine();
    }

    static void Eraser()
    {
        Console.SetCursorPosition(0, 1);
        Console.WriteLine(" [' 'X2000] "); //I'm not going to write all the spaces for the sake of this post
        Console.SetCursorPosition(0, 1);                                                                                                  
    }