java 在Cmd命令行实现清屏
清屏代码
/**控制台清屏 * @throws IOException * @throws InterruptedException */ public static void cls() throws IOException, InterruptedException { 新建一个 ProcessBuilder,其要执行的命令是 cmd.exe,参数是 /c 和 cls new ProcessBuilder("cmd", "/c", "cls") //将 ProcessBuilder 对象的输出管道和 Java 的进程进行关联,这个函数的返回值也是一个 ProcessBuilder .inheritIO() //开始执行 ProcessBuilder 中的命令 .start() //等待 ProcessBuilder 中的清屏命令执行完毕 //如果不等待则会出现清屏代码后面的输出被清掉的情况 .waitFor(); // 清屏命令 }
测试类
import java.io.IOException; public class ConsoleCLS { public static void main(String[] args) throws IOException, InterruptedException { for (int i = 0; i < 20; i++) { System.out.println("%%%%%% " + i + " %%%%%"); } // 睡眠三秒 Thread.currentThread().sleep(1000 * 3); // 控制台清屏 cls(); } /** * 控制台清屏 * @throws IOException * @throws InterruptedException */ public static void cls() throws IOException, InterruptedException { 新建一个 ProcessBuilder,其要执行的命令是 cmd.exe,参数是 /c 和 cls new ProcessBuilder("cmd", "/c", "cls") // 将 ProcessBuilder 对象的输出管道和 Java 的进程进行关联,这个函数的返回值也是一个 // ProcessBuilder .inheritIO() // 开始执行 ProcessBuilder 中的命令 .start() // 等待 ProcessBuilder 中的清屏命令执行完毕 // 如果不等待则会出现清屏代码后面的输出被清掉的情况 .waitFor(); // 清屏命令 } }
只在CMD中有效
上面的代码只在CMD命令行中有效,在Eclipse中是无效的。在eclipse中复制地址,然后进入目录中,打开命令行测试:
1.带包编译
javac -d . 类名.java
2.带包运行
java 包名.类名
清屏效果
可以看到刚才控制台中打印的已经被清理掉了。
参考资料
(https://blog..net/jacklang/article/details/52937071)
下一篇:
【推荐系统】音乐推荐系统02