2014-09-05 77 views
1

已经搜索了很多,并没有找到任何东西。在Java中的控制台添加和删除文本

因此,我们知道打印文本是System.out.printprintln或任何您的需要。您也可以使用System.console()并在其上调用方法。

但是,我看到应用程序改变他们添加到屏幕上的输出。例如,删除完成后不再相关的事物。这在Java中如何完成?

+1

清除控制台并重现什么是有效的...... – StackFlowed 2014-09-05 20:19:25

+0

@Aeshang因此必须清除整个控制台并重新打印所有有效的文本? – DziNeIT 2014-09-05 20:20:26

+0

是的,我想不出另一种方式来完成你所需要的... – StackFlowed 2014-09-05 20:22:55

回答

4

您可以使用退格字符\b删除文本。例如:

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

一个例子:

public class Test { 

    public static final String[] frames = {"|", "/", "-", "\\"}; 

    public static void main(String[] args) throws Exception { 
     System.out.println(); 

     for (int ctr = 0; ctr < 50; ctr++) { 
      System.out.print(frames[ctr % frames.length]); 
      Thread.sleep(250); 
      System.out.print("\b"); 
     } 
    } 
} 

但是请注意,这可能不是在Eclipse控制台中工作,但Eclipse之外工作。

+0

好的答案,谢谢。我并不期待清理控制台并跟踪我想要保留的内容以重新打印它们。 – DziNeIT 2014-09-05 20:36:49

+0

\ b只会删除最后一个字符......如果您想删除中间的东西则不会有用... – StackFlowed 2014-09-05 20:43:40

+0

\ r也适用于大多数控制台 - 将光标移至行首 – Arkadiy 2014-09-05 20:46:25