问题描述
我想知道是否有办法在 C# 代码的控制台应用程序中做两件事。
第一个,是显示被调用进程的进度百分比,这样用户就会或多或少地知道经过的进度以及他/她需要等待的时间。
第二个,打印三个不断变化的字符串,循环每一个,直到过程结束。
那些是我想一个接一个地打印的字符串,但在控制台应用程序屏幕的同一行上:
string Please_Wait_One_Dot = "Please wait.";
string Please_Wait_Two_Dots = "Please wait..";
string Please_Wait_Three_Dots = "Please wait...";
Console.WriteLine("\n{0}",Please_Wait_One_Dot);
Console.WriteLine("\n{0}",Please_Wait_Two_Dots);
Console.WriteLine("\n{0}",Please_Wait_Three_Dots);
// This Prints those Strings but on Different Lines without any Loop.
基本上,我想要做的是打印一些显示消息的文本,但是,点数从 1 变为 2,从 2 变为 3,然后又变回 1,循环此循环直到选定操作最终由用户完成。
解决方法
未测试...用作伪代码...
Console.write("Please_Wait");
int count = 0;
do
{
if (count < 3)
{
Console.Write("."); // add a dot
count++;
}
else
{
Console.Write("\b\b\b"); // erase all dots
count = 0; //resume
}
} while(not_done)