Java清屏函数

Java清屏函数

文章目录

  • Java清屏函数
    • 前因
    • 代码

前因

因为最近在做Java课程的大作业,一个基于控制台交互的程序,试图绘制界面,希望每次对console清屏,在网上找了很多清屏函数,发现都或多或少有些问题,包括但不限于以下几个问题:

  1. 治标不治本
  2. 在Windows运行正常,在Linux无法运行
  3. 在Linux运行正常,在Windows乱码
  4. 在Windows cmd运行乱码,其余正常

代码

最终,结合了我能找到的代码,终于得出了一个能实现比较满意的效果的代码:

    /**
     * 清屏
     */
    public static void clean() {
        try {
            String os = System.getProperty("os.name");
            if (os.contains("Windows")) {
                new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
            } else {
                System.out.println("\033c");
            }
        } catch (Exception exception) {
            //  Handle exception.
        }
    }

tips:在eclipse和IDEA这类IDE里面的控制台是无效的,因为IDE里的输入输出流是经过重定向的,不过IDE里本来就是为了调试,清除屏幕本身就是不合理的行为,想看最终效果打成jar包即可。

你可能感兴趣的:(Java,java,eclipse,开发语言,idea)