gpt4 book ai didi

java - 如何在Java中使用清屏

转载 作者:行者123 更新时间:2023-12-01 04:19:08 24 4
gpt4 key购买 nike

如何在Java中清屏?

我使用 while 循环和 switch case 创建了一个菜单驱动的简单演示程序。一个循环完成后,我想清除屏幕,但这不起作用。我很高兴能找到一个可能的解决方案。

我正在使用 JDK 7 并在命令提示符下运行该程序。

import java.util.*;
class DemoPrg
{
public static void main(String argv[])
{
int ch;
Scanner sc=new Scanner(System.in);
while(true)
{
// i want to clear the scrren hear
System.out.println("1. Insert New Record");
System.out.println("2. Display Record");
System.out.println("3. Delete Record");
System.out.println("4. Edit Record");
System.out.println("0. Exit");
System.out.print("Enter Your Choice:");
ch=sc.nextInt();
switch(ch)
{
case 1:
System.out.println("insert");
break;
case 2:
System.out.println("display");
break;
case 3:
System.out.println("delete");
break;
case 4:
System.out.println("edit");
break;
case 0:
System.exit(0);
default:
System.out.println("invalid");
}
}
}
}

最佳答案

抱歉,但这不可能以通用方式实现。

原因是,您的程序不知道屏幕是什么。 System.out 可以引用任何东西、NUL 设备、某种控制台甚至文件。控制台可能允许清除,但是如何清除控制台完全取决于控制台的类型(IDE中通常的控制台无法清除,这与记录程序输出的目的相矛盾) ,而 DOS 提示符/shell 的控制台通常可以被清除)。

您最好的选择是假设控制台确实支持 ANSI 代码,并按照 MohdAdnan 评论中的建议发送用于清晰屏幕的 ANSI 控制代码:

System.out.print("\u001b[2J");
System.out.flush();

关于java - 如何在Java中使用清屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19142548/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com