C# cmd中修改显示(显示进度变化效果)的方法

复制代码 代码如下:

public void PrintPercentage(int FinishedCount, int TotalCount) 

       decimal finishedPercentage = Convert.ToDecimal(FinishedCount) / Convert.ToDecimal(TotalCount); 
       Console.SetCursorPosition(0, Console.CursorTop - 1); 
       Console.WriteLine((finishedPercentage * 100).ToString("f1") + "%"); 
 } 

其中SetCursorPosition的目的就是重置光标到,里面参数的含义是(left, top),当前cmd最下面一行即为top.ToString("f1")是指保留一位小数.

或者用“\r”也能达到目的,表示将光标回到当前第一行,如下:

复制代码 代码如下:

public void PrintPercentage(int FinishedCount, int TotalCount) 

       decimal finishedPercentage = Convert.ToDecimal(FinishedCount) / Convert.ToDecimal(TotalCount); 
       Console.WriteLine("\r" + (finishedPercentage * 100).ToString("f1") + "%"); 


相比之下前一种更加灵活一点,可以定位到任何位置

你可能感兴趣的:(C# cmd中修改显示(显示进度变化效果)的方法)