如何让退格\ b在Eclipse的控制台中工作?

我正在创建一个小的Java应用程序,该应用程序应带有进度指示器。在每个循环中,它使用退格键\b删除显示的进度,然后再显示下一个百分比。


这是一个简化的示例:


public static void main(String[] args) throws Exception {

    System.out.print("Progress: ");

    for (int percentage = 0; percentage < 100; percentage++) {

        System.out.print(percentage + "%");

        Thread.sleep(10); // Stub for "long running task".

        int length = String.valueOf(percentage).length() + 1;

        while (length-- > 0) {

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

        }

    }

    System.out.println("finished!");

}

这在命令提示符下可以完美地工作,但是在Eclipse的控制台(Galileo build 20090920-1017)中无法识别退格字符。相反,它显示一个表示未知字符的空正方形。看截图:


如何使Eclipse正确“显示”退格键?即让它删除前一个字符。


实际上,这不是showstopper,因为它将仅在命令控制台中运行,但是最好也使其在Eclipse中运行:)


慕哥6287543
浏览 1006回答 3
3回答

潇湘沐

Eclipse错误#76936。 我不会指望他们修复它,也没有列出解决方法。您可能会幸运地找到可以提供更高级控制台的插件。

开心每一天1111

好吧,确实您不能使用Backspace \ b来删除显示的进度,但是您可以通过使用调用println的循环清除控制台来删除它。当然,此kluge不会清除您的日志文件!

明月笑刀无情

已修复,Eclipse火星。请注意,由于eclipse控制台滞后,我不会使用它进行持续更新。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java