logo

So löschen Sie den Bildschirm in Java

In Java, wenn wir kompilieren und ausführen Java-Programme , wird die Konsole oder der Bildschirm mit vielen Befehlen und Ausgaben durcheinander gebracht. Um den störenden Inhalt der Konsole zu reduzieren oder zu löschen, müssen wir Folgendes tun Löschen Sie den Bildschirm in Java damit wir Programme ordnungsgemäß ausführen können. In diesem Abschnitt werden wir lernen So löschen Sie die Konsole oder den Bildschirm in Java.

Es gibt die folgenden Möglichkeiten, den Bildschirm oder die Konsole zu löschen Java :

Verwendung des ANSI-Escape-Codes

Die ANSI-Escape-Sequenz ist eine standardmäßige Inband-Signalisierung zur Steuerung der Cursorposition. Im folgenden Beispiel haben wir den Escape-Code verwendet 33[H33[2J. Lassen Sie uns den Code brechen und ihn separat verstehen.

    33:Es stellt das ASCII-Escape-Zeichen dar. Sein ANSI-Wert ist 27. Es steht für ESC .[:Es stellt die Escape-Sequenz dar. Es ist auch bekannt als CSI (Kontrollsequenzanzeige). Der CSI-Befehl beginnt mit ESC[ gefolgt von null oder mehr Parametern.

Wenn wir die obigen Codes kombinieren, erhalten wir 33[ oder ESC[.

    33[H:Es bewegt den Cursor in die obere linke Ecke des Bildschirms oder der Konsole.33[2J:Es löscht den Bildschirm vom Cursor bis zum Ende des Bildschirms.

Kombinieren wir die beiden oben genannten Codes, erhalten wir 33[H33[2J. Die Codekombination löscht den Bildschirm oder die Konsole.

Die CSI-Befehle verwenden die Standardwerte, wenn wir im Befehl keine Parameter angeben. Wir können den folgenden Code verwenden, um den Bildschirm in Java zu löschen:

ClearScreenExample1.java

 public class ClearScreenExample1 { public static void main(String[] args) { System.out.print('33[H33[2J'); System.out.flush(); } } 

Im obigen Beispiel haben wir denselben Code (33[H33[2J) verwendet, den wir oben erklärt haben. Es löscht die Konsole. Wir haben auch das verwendet spülen() Funktion, die die Cursorposition am oberen Bildschirmrand zurücksetzt.

Verkettung Java-String

Verwenden eines plattformspezifischen Befehls

Wir können den Befehl auch entsprechend der von uns verwendeten Plattform verwenden. Bei dieser Methode erhalten wir zunächst die Eigenschaft des Systems mithilfe von getProperty() Methode der Systemklasse. Danach wählen wir den in der Plattform verwendeten Befehl zum Löschen der Konsole aus.

System.getProperty()-Methode

Es ist die statische Methode der Systemklasse. Es wird verwendet, um die durch den angegebenen Schlüssel angegebene Systemeigenschaft abzurufen. Es analysiert einen Parameter Schlüssel vom Typ String. Es gibt den Namen der Systemeigenschaft an. Es gibt die Eigenschaft des Systems zurück und

Syntax:

 public static String getProperty(String key) 

Es werden die folgenden Ausnahmen ausgelöst:

    Sicherheitsaußnahme:Wenn ein Sicherheitsmanager vorhanden ist und seine checkPropertyAccess()-Methode keinen Zugriff auf die angegebene Systemeigenschaft zulässt.NullPointerException:Es löst die Ausnahme aus, wenn wir den Schlüssel nicht null angeben.IllegalArgumentException:Es löst die Ausnahme aus, wenn der Schlüssel leer ist.

Erstellen wir ein Java-Programm, das die Konsole mithilfe des plattformspezifischen Befehls löscht.

ClearScreenExample2.java

 public class ClearScreenExample2 { public final static void clearConsole() { public static void main(String[] args) { try { final String os = System.getProperty('os.name'); if (os.contains('Windows')) { Runtime.getRuntime().exec('cls'); } } catch (final Exception e) { e.printStackTrace(); } } 

Im obigen Beispiel haben wir angegeben Windows Betriebssystem und der Befehl, der zum Löschen der Konsole verwendet wird cls . Wir können im obigen Programm auch den folgenden Code verwenden:

 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) { e.printStackTrace(); } } 

Verwenden des Befehlszeileninterpreters

Bei dieser Methode rufen wir den Befehlszeileninterpreter (CMD) auf. Nach dem Aufruf führt der Interpreter die aus cls Befehl. Es ermöglicht die Ausführung der integrierten Befehle. Jetzt müssen wir den Ausgabekanal des Interpreters mit dem Ausgabekanal des Java-Prozesses verbinden. Dies kann mit der Methode inheritIO() erfolgen.

ClearScreenExample3.java

 import java.io.IOException; public class ClearScreenExample3 { public static void main(String... arg) throws IOException, InterruptedException { new ProcessBuilder('cmd', '/c', 'cls').inheritIO().start().waitFor(); } } 

Sobald das obige Programm eine Verbindung zur Konsole herstellt, startet es über eine Befehlszeile ohne Ausgabeumleitung und löscht den Bildschirm oder die Konsole.