日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java清除控制台_Java:清除控制台

發布時間:2025/4/16 java 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java清除控制台_Java:清除控制台 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

問題

請問任何正文可以告訴我在Java中使用什么代碼來清除屏幕?例如在C中

system("CLS");

Java用于清晰屏幕的代碼是什么?

謝謝!

#1 熱門回答(87 贊)

由于這里有幾個答案顯示Windows的非工作代碼,這里有一個澄清:

Runtime.getRuntime().exec("cls");

此命令不起作用,原因有兩個:

標準Windows安裝中沒有可通過Runtime.exec調用的名為cls.exe或cls.com的可執行文件,因為眾所周知的命令cls內置于Windows的命令行解釋器。

通過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進程連接到控制臺時,即已從命令行啟動而沒有輸出重定向時,它將清除控制臺。

#2 熱門回答(49 贊)

你可以使用以下代碼清除命令行控制臺:

public static void clearScreen() {

System.out.print("\033[H\033[2J");

System.out.flush();

}

#3 熱門回答(17 贊)

這就是我如何處理它。此方法適用于Windows操作系統案例和Linux / Unix操作系統案例(這意味著它也適用于Mac OS X)。

public final static void clearConsole()

{

try

{

final String os = System.getProperty("os.name");

if (os.contains("Windows"))

{

Runtime.getRuntime().exec("cls");

}

else

{

Runtime.getRuntime().exec("clear");

}

}

catch (final Exception e)

{

// Handle any exceptions.

}

}

總結

以上是生活随笔為你收集整理的java清除控制台_Java:清除控制台的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。