logo

Hur man rensar skärmen i Java

I Java, när vi kompilerar och kör Java-program , konsolen eller skärmen blir rörd med massor av kommandon och utdata. För att minska eller rensa innehållet i konsolen måste vi göra det rensa skärmen i Java så att vi kan köra program på ett korrekt sätt. I det här avsnittet kommer vi att lära oss hur man rensar konsolen eller skärmen i Java.

Det finns följande sätt att rensa skärmen eller konsolen Java :

Använder ANSI Escape Code

ANSI escape-sekvens är standardin-band-signalering för att styra markörens position. I följande exempel har vi använt escape-koden 33[H33[2J. Låt oss bryta koden och förstå den separat.

    33:Den representerar ASCII-escape-karaktären. Dess ANSI-värde är 27. Det står för ESC .[:Den representerar flyktsekvensen. Det är också känt som CSI (Kontrollsekvensindikator). CSI-kommandot börjar med ESC[ följt av noll eller fler parametrar.

Genom att kombinera ovanstående koder får vi 33[ eller ESC[.

    33[H:Den flyttar markören till det övre vänstra hörnet av skärmen eller konsolen.33[2J:Det rensar skärmen från markören till slutet av skärmen.

Låt oss kombinera ovanstående två koder, vi får 33[H33[2J. Kombinationen av kod rensar skärmen eller konsolen.

CSI-kommandona använder standardvärdena om vi inte anger någon parameter i kommandot. Vi kan använda följande kod för att rensa skärmen i Java:

ClearScreenExample1.java

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

I exemplet ovan har vi använt samma kod (33[H33[2J) som vi har förklarat ovan. Det rensar konsolen. Vi har också använt spola() funktion som återställer markörens position överst på skärmen.

primärnyckel och sammansatt nyckel i sql

Använder plattformsspecifikt kommando

Vi kan också använda kommandot enligt plattformen vi använder. I den här metoden får vi först egenskapen för systemet genom att använda getProperty() metod för klassen System. Efter det väljer vi kommandot som används i plattformen för att rensa konsolen.

System.getProperty() Metod

Det är den statiska metoden för klassen System. Den används för att få systemegenskapen indikerad av den angivna nyckeln. Den analyserar en parameter nyckel av typen String. Den anger namnet på systemegenskapen. Det returnerar systemets egendom och

Syntax:

 public static String getProperty(String key) 

Det ger följande undantag:

    SecurityException:Om det finns en säkerhetshanterare och dess checkPropertyAccess()-metod tillåter inte åtkomst till den angivna systemegenskapen.NullPointerException:Det ger undantaget om vi inte anger nyckeln null.IllegalArgumentException:Det kastar undantaget om nyckeln är tom.

Låt oss skapa ett Java-program som rensar konsolen med det plattformsspecifika kommandot.

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

I exemplet ovan har vi specificerat Windows operativsystem och kommandot som används för att rensa konsolen är cls . Vi kan också använda följande kod i programmet ovan:

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

Använder kommandoradstolk

I den här metoden anropar vi kommandoradstolken (CMD). Efter att ha anropat utför tolken cls kommando. Det gör det möjligt att utföra de inbyggda kommandona. Nu måste vi ansluta tolkutgångskanalen med Java-processutgångskanalen. Det kan göras genom att använda metoden 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(); } } 

När programmet ovan ansluter till konsolen, startar det från en kommandorad utan omdirigering av utdata och rensar skärmen eller konsolen.