在 C# 中,我如何在同一行中打印一个字符串,每次打印结果时都替换该字符串?
In c# how do i print a string in the same line, replacing the string each time i print the result?
我正在尝试模拟从 0% 到 100% 的加载屏幕。
我正在使用 Console.Write 而不是 WriteLine 但这只会打印值和其余部分而不是替换最后一个打印。
for (int k = 0; k <=100; k++){
Console.Write($"[LOADING: {k}% ]");
Thread.Sleep(25);
}
这导致:
[加载 1%] [加载 2%] [加载 3%] [加载 4%] [加载 5%]
我希望有一个字符串用下一个打印值替换自身
只需在 for 循环的每次迭代中调用 Console.Clear() 即可覆盖之前显示在控制台中的任何文本。
for (int k = 0; k <=100; k++){
Console.Clear()
Console.Write($"[LOADING: {k}% ]");
Thread.Sleep(25);
}
试试这个
for (int k = 0; k <=100; k++){
Console.SetCursorPosition(0, Console.CursorTop);
Console.Write($"[LOADING: {k}% ]");
Thread.Sleep(25);
}
我正在尝试模拟从 0% 到 100% 的加载屏幕。
我正在使用 Console.Write 而不是 WriteLine 但这只会打印值和其余部分而不是替换最后一个打印。
for (int k = 0; k <=100; k++){
Console.Write($"[LOADING: {k}% ]");
Thread.Sleep(25);
}
这导致:
[加载 1%] [加载 2%] [加载 3%] [加载 4%] [加载 5%]
我希望有一个字符串用下一个打印值替换自身
只需在 for 循环的每次迭代中调用 Console.Clear() 即可覆盖之前显示在控制台中的任何文本。
for (int k = 0; k <=100; k++){
Console.Clear()
Console.Write($"[LOADING: {k}% ]");
Thread.Sleep(25);
}
试试这个
for (int k = 0; k <=100; k++){
Console.SetCursorPosition(0, Console.CursorTop);
Console.Write($"[LOADING: {k}% ]");
Thread.Sleep(25);
}