gpt4 book ai didi

java - 如何删除控制台中的所有字符?

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

我希望我的程序能够删除它打印的所有文本。每次打印内容时,我都会调用 print() 方法而不是 System.out.print(),但是当我调用 erase() 方法似乎在 Windows 7 控制台中没有执行任何操作。我不知道发生了什么事;我单独运行了一个测试,确认 \b 确实删除了字符,但无论出于何种原因,它在 erase() 中不起作用。退格字符是否会互相删除或其他什么?

编辑:我已经运行了更多测试。看起来\b 不会覆盖换行符。所以我想我需要一种方法来做到这一点。

public static int textLength = 0;

public static void erase() {
for (int i = 0; i < textLength; i++) {
System.out.print('\b');
}
textLength = 0;
}

public static void print(String s) {
textLength += s.length();
System.out.print(s);
}

最佳答案

Runtime.getRuntime().exec("cls");

编辑:看来这不是您正在寻找的解决方案。使用时

System.out.print('\b');

您需要注意,这不会删除已经打印的内容。相反,每个退格键都会将光标向后移动一个字符。要真正删除其中的内容,您需要用其他文本覆盖它。

关于java - 如何删除控制台中的所有字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10688036/

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