7

如何使用 Java 清除在命令行中打印的文本?我想Text1在打印后清除并用Text2. 我搜索并找到此代码,但它不起作用。

public class className {

    public static void main(String[] args) throws IOException {
        System.out.println("Text1");
        Runtime.getRuntime().exec("cls");
        System.out.println("Text2");
    }
}
4

3 回答 3

8

您可以通过打印来做到这一点\b

System.out.print("Text1");
System.out.print("\b\b\b\b\b");
System.out.print("     ");

请注意,这在Eclipse Console中不起作用。

于 2013-02-17T18:01:31.660 回答
2

试试这个解决方案:

new ProcessBuilder("cmd", "/c", "cls").inheritIO().start().waitFor();

我使用的是 Windows 8,这个解决方案对我有用。希望它对你也一样。:)

于 2017-09-09T18:29:23.200 回答
1

您可以简单地使用 '\r' (回车)转义序列。

System.out.print("Text1");
System.out.print("\rText2");

只会打印'Text2'

于 2016-03-10T20:24:04.713 回答