最近用java做一个程序(只能用java做),程序打成jar文件,并通过.bat文件调用。
其中我希望在程序中用System.out.print输出当前执行的进度,比如“59%”,现在我每调用一次System.out的相关方法,那么之前的信息始终停留,最后结果是1%15%65%99%100%,这不是我想要的,我希望15%出现时候1%就被覆盖掉,请问怎么实现?
我觉得应该存在实现的方式,因为我在使用Maven时候在下载组件时候在控制台输出过类似的提示信息。
System.out.printf("%4s", "15%");
System.out.printf("\r%4s", "1%");
考虑使用/r
用个临时变量保存 当前进度 例如:
String temp="";
//加载进度方法 修改 temp 的值
temp+="";
System.out.print(temp);
调用cls命令清屏
[code="java"] Runtime.getRuntime().exec("cls");
//或者 ProcessBuilder pb = new ProcessBuilder("cls");
pb.start();[/code]