当前位置:  开发笔记 > 编程语言 > 正文

C# - 在程序运行时重写/编辑行

如何解决《C#-在程序运行时重写/编辑行》经验,为你挑选了1个好方法。

有没有办法可以编辑/重写已经由Console.PrintLine()方法打印的某些行?我必须能够编辑提示中显示的任何行.

这是一个关于我正在尝试运行的代码的示例,可能看起来像:

public static void RewriteLine(LineNr, Text)
{
    //Code
}

Console.WriteLine("Text to be rewritten");
Console.Writeline("Just some text");
RewriteLine(1, "New text");

示例根据前一代码的输出显示我想要重写的行:

要重写的文本 //此行(已由Console.WriteLine()方法执行的bin)应替换为:"New text"

只是一些文字



1> Alexei..:

它应该如下所示:

public static void RewriteLine(int lineNumber, String newText)
{
    int currentLineCursor = Console.CursorTop;
    Console.SetCursorPosition(0, currentLineCursor - lineNumber);
    Console.Write(newText); Console.WriteLine(new string(' ', Console.WindowWidth - newText.Length)); 
    Console.SetCursorPosition(0, currentLineCursor);
}

static void Main(string[] args)
{
    Console.WriteLine("Text to be rewritten");
    Console.WriteLine("Just some text");
    RewriteLine(2, "New text");
}

发生的事情是你改变光标位置并写一些东西.您应该添加一些代码来处理长字符串.

推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有