logo

Cómo borrar la pantalla en Java

En Java, cuando compilamos y ejecutamos programas java , la consola o la pantalla se estropean con muchos comandos y resultados. Para reducir o borrar el contenido desordenado de la consola, necesitamos borrar la pantalla en Java para que podamos ejecutar programas de forma adecuada. En esta sección aprenderemos cómo borrar la consola o pantalla en Java.

Existen las siguientes formas de borrar la pantalla o la consola en Java :

Usando el código de escape ANSI

La secuencia de escape ANSI es una señalización dentro de banda estándar para controlar la posición del cursor. En el siguiente ejemplo, hemos utilizado el código de escape. 33[H33[2J. Rompamos el código y comprendámoslo por separado.

    33:Representa el carácter de escape ASCII. Su valor ANSI es 27. Significa ESC .[:Representa la secuencia de escape. También se le conoce como CSI (Indicador de Secuencia de Control). El comando CSI comienza con ESC[ seguido de cero o más parámetros.

Al combinar los códigos anteriores, obtenemos 33[ o ESC[.

    33[H:Mueve el cursor en la esquina superior izquierda de la pantalla o consola.33[2J:Limpia la pantalla desde el cursor hasta el final de la pantalla.

Combinemos los dos códigos anteriores, obtenemos 33[H33[2J. La combinación de código borra la pantalla o la consola.

Los comandos CSI usan los valores predeterminados si no especificamos ningún parámetro en el comando. Podemos usar el siguiente código para borrar la pantalla en Java:

ClearScreenExample1.java

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

En el ejemplo anterior, hemos utilizado el mismo código (33[H33[2J) que hemos explicado anteriormente. Limpia la consola. También hemos utilizado el enjuagar() función que restablece la posición del cursor en la parte superior de la pantalla.

java cast char a cadena

Usando el comando específico de la plataforma

También podemos utilizar el comando según la plataforma que estemos usando. En este método, primero, obtenemos la propiedad del sistema usando el obtenerPropiedad() método de la clase System. Luego de eso, seleccionamos el comando usado en la plataforma para borrar la consola.

Método System.getProperty()

Es el método estático de la clase System. Se utiliza para obtener la propiedad del sistema indicada por la clave especificada. Analiza un parámetro llave de tipo Cadena. Especifica el nombre de la propiedad del sistema. Devuelve la propiedad del sistema y

Sintaxis:

 public static String getProperty(String key) 

Lanza las siguientes excepciones:

    Excepcion de seguridad:Si existe un administrador de seguridad y su método checkPropertyAccess() no permite el acceso a la propiedad del sistema especificada.Excepción de puntero nulo:Lanza la excepción si no especificamos la clave nula.Argumento de excepción ilegal:Lanza la excepción si la clave está vacía.

Creemos un programa Java que borre la consola usando el comando específico 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 el ejemplo anterior, hemos especificado el ventanas sistema operativo y el comando que se utiliza para borrar la consola es cls . También podemos usar el siguiente código en el 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(); } } 

Usando el intérprete de línea de comando

En este método, invocamos el intérprete de línea de comando (CMD). Después de invocar, el intérprete ejecuta el cls dominio. Permite ejecutar los comandos integrados. Ahora necesitamos conectar el canal de salida del intérprete con el canal de salida del proceso Java. Se puede hacer utilizando el método heredadoIO().

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

Una vez que el programa anterior se conecta con la consola, comienza desde una línea de comando sin redirección de salida y borra la pantalla o la consola.