Java:清除控制台
谁能告诉我Java用什么代码实现清晰屏幕?例如在C ++中
system("CLS");
Java使用什么代码实现清晰的画面?
谢谢!
回答:
由于这里有几个答案显示了Windows的无效代码,因此请澄清一下:
Runtime.getRuntime().exec("cls");
该命令没有工作,有两个原因:
在Windows的命令行解释器中内置了众所周知的命令,因此没有可通过调用的名为
cls.exe
或cls.com
在标准Windows
安装中的可执行文件。Runtime.execcls
通过启动新进程时Runtime.exec,标准输出将重定向到启动Java进程可以读取的管道。但是,当cls命令的输出被重定向时,它不会清除控制台。
为了解决这个问题,我们必须调用命令行解释器(cmd)
并告诉它执行一个命令(/c cls)
,该命令允许调用内置命令。此外,我们必须使用以下命令将其输出通道直接连接到Java进程的输出通道,该通道从Java 7开始运行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进程连接到控制台时,即已从命令行启动而没有输出重定向,它将清除控制台。
以上是 Java:清除控制台 的全部内容, 来源链接: utcz.com/qa/434986.html