logo

Com esborrar la pantalla a Java

A Java, quan compilem i executem Programes Java , la consola o la pantalla es desordena amb moltes ordres i sortides. Per reduir o esborrar el contingut desordenat de la consola, ho hem de fer esborra la pantalla a Java perquè puguem executar programes d'una manera adequada. En aquest apartat, aprendrem com esborrar la consola o la pantalla a Java.

Hi ha les maneres següents d'esborrar la pantalla o la consola Java :

Utilitzant el codi d'escapament ANSI

La seqüència d'escapada ANSI és una senyalització estàndard en banda per controlar la posició del cursor. En l'exemple següent, hem utilitzat el codi d'escapament 33[H33[2J. Trenquem el codi i entenem-lo per separat.

    33:Representa el caràcter d'escapada ASCII. El seu valor ANSI és 27. Significa ESC .[:Representa la seqüència d'escapada. També es coneix com CSI (Indicador de seqüència de control). L'ordre CSI comença amb ESC[ seguit de zero o més paràmetres.

En combinar els codis anteriors, obtenim 33[ o ESC[.

    33[H:Mou el cursor a l'extrem superior esquerre de la pantalla o consola.33[2J:Esborra la pantalla des del cursor fins al final de la pantalla.

Combinem els dos codis anteriors, obtenim 33[H33[2J. La combinació de codi esborra la pantalla o la consola.

Les ordres CSI utilitzen els valors per defecte si no especifiquem cap paràmetre a l'ordre. Podem utilitzar el codi següent per esborrar la pantalla a Java:

ClearScreenExample1.java

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

A l'exemple anterior, hem utilitzat el mateix codi (33[H33[2J) que hem explicat anteriorment. Esborra la consola. També hem utilitzat el rubor() funció que restableix la posició del cursor a la part superior de la pantalla.

menú desplegable javascript

Utilitzant l'ordre específic de la plataforma

També podem utilitzar l'ordre segons la plataforma que estem utilitzant. En aquest mètode, primer, obtenim la propietat del sistema utilitzant el getProperty() mètode de la classe System. Després d'això, seleccionem l'ordre que s'utilitza a la plataforma per esborrar la consola.

Mètode System.getProperty().

És el mètode estàtic de la classe System. S'utilitza per obtenir la propietat del sistema indicada per la clau especificada. Analitza un paràmetre clau de tipus String. Especifica el nom de la propietat del sistema. Retorna la propietat del sistema i

Sintaxi:

 public static String getProperty(String key) 

Llança les següents excepcions:

    SecurityException:Si existeix un gestor de seguretat i el seu mètode checkPropertyAccess() no permet l'accés a la propietat del sistema especificada.NullPointerException:Llança l'excepció si no especifiquem la clau nul·la.IllegalArgumentException:Llança l'excepció si la clau està buida.

Creem un programa Java que esborri la consola mitjançant l'ordre específica de la plataforma.

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(); } } 

En l'exemple anterior, hem especificat el Windows sistema operatiu i l'ordre que s'utilitza per esborrar la consola és cls . També podem utilitzar el codi següent al programa anterior:

 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(); } } 

Ús de l'intèrpret de línia d'ordres

En aquest mètode, invoquem l'intèrpret de línia d'ordres (CMD). Després d'invocar, l'intèrpret executa el fitxer cls comandament. Permet executar les ordres integrades. Ara hem de connectar el canal de sortida de l'intèrpret amb el canal de sortida del procés Java. Es pot fer utilitzant el mètode inheritIO().

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(); } } 

Un cop el programa anterior es connecta amb la consola, comença des d'una línia d'ordres sense redirecció de sortida i esborra la pantalla o la consola.