我在命令行模式下使用7zip。
当操作需要很长时间时,有时会显示一个过程百分比。
我想知道我们是否想要使用C#/ Java,使用什么库?
此致
答案 0 :(得分:5)
您可以打印“回车”,也称为'\r'
,将“光标”重置为该行的开头。
System.out.printf("Progress: %3d %% \r", percentComplete);
现在每次打印该行时,都会被发送回开头,所以下一个百分比会覆盖前一个百分比。
答案 1 :(得分:3)
没有图书馆。您只需打印到控制台System.out.print(而不是println!),然后发送退格字符以清除该行。
System.out("Progress 5");
System.out("\b\b\b\b\b\b\b\b\b\b");
System.out("Progress 10");
我暂时没有这样做,但应该这样做。
答案 2 :(得分:0)
你可以清除控制台的踢...哦,不要忘记string.format有百分比支持......
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var perc = 0.0;
while(perc <= 1.0)
{
Threading.Thread.Sleep(50); //simulate doing some work
//EDIT:
//Console.Clear();
Console.Write(String.Format("{0:P}\r", perc)); //as per suggestion
perc += 0.01;
}
Console.WriteLine("Press any key to exit");
var exit = Console.ReadKey();
}
}
}