如何清除控制台?
任何人都可以告诉我在Java中用于清晰屏幕的代码吗?
例如,在C++:
system("CLS");
Java中使用什么代码来清除屏幕?
任何人都可以告诉我在Java中用于清晰屏幕的代码吗?
例如,在C++:
system("CLS");
Java中使用什么代码来清除屏幕?
由于这里有几个答案显示了Windows的非工作代码,因此这里有一个澄清:
Runtime.getRuntime().exec("cls");
此命令不起作用,原因有两个:
在标准 Windows 安装中没有可执行文件可以通过 调用,因为众所周知的命令内置于 Windows 的命令行解释器中。cls.exe
cls.com
Runtime.exec
cls
当通过 启动新进程时,标准输出被重定向到启动 Java 进程可以读取的管道。但是,当命令的输出被重定向时,它不会清除控制台。Runtime.exec
cls
为了解决这个问题,我们必须调用命令行解释器()并告诉它执行一个允许调用内置命令的命令()。此外,我们必须将其输出通道直接连接到Java进程的输出通道,该输出通道从Java 7开始工作,使用:cmd
/c cls
inheritIO()
import java.io.IOException;
public class CLS {
public static void main(String... arg) throws IOException, InterruptedException {
new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();
}
}
现在,当Java进程连接到控制台时,即从命令行启动而没有输出重定向,它将清除控制台。
您可以使用以下代码清除命令行控制台:
public static void clearScreen() {
System.out.print("\033[H\033[2J");
System.out.flush();
}
警告:
有关进一步阅读,请访问此