就像wget显示进度条一样,我们有的程序在终端运行,也想显示进度条。利用\\r可以来实现:

终端显示

class ConsoleTest{
 public static void main(String[] args){
  System.out.print("\\033[0;1;5;31m");
  System.out.println("----------\\n正在下载\\n----------");
  System.out.println("\\033[0m");

  for(int i=0;i<=100;i++){
   System.out.print('\\r');
   StringBuilder sb=new StringBuilder();
   for(int j=0;j<100;j++)sb.append(j<i?"=":(i==j?">":" "));
   System.out.print(sb.toString()+"\\t"+i+"%");
   try{
    Thread.sleep(100);
   }catch(Exception e){}
  }
 
  System.out.println("\\nAll done!");
 }
}