Program Tip

Eclipse 콘솔에서 백 스페이스 \ b를 작동시키는 방법은 무엇입니까?

programtip 2020. 10. 17. 12:03
반응형

Eclipse 콘솔에서 백 스페이스 \ b를 작동시키는 방법은 무엇입니까?


백분율이있는 진행률 표시기가 있어야하는 작은 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 빌드 20090920-1017). 대신 알 수없는 문자를 나타내는 빈 사각형을 표시합니다. 스크린 샷보기 :

대체 텍스트

Eclipse에서 백 스페이스를 올바르게 "표시"하려면 어떻게해야합니까? 즉, 이전 문자를 제거합니다.

이것은 명령 콘솔에서 실행되기 때문에 실제로 눈에 띄는 것은 아니지만 Eclipse에서도 작동하도록 만드는 것이 좋습니다. :)


이클립스 버그 # 76936. 나는 그것들을 고치기 위해 의지하지 않을 것이며, 나열된 해결 방법도 없습니다.

더 고급 콘솔에 기여하는 플러그인을 찾을 수 있습니다.


음, 표시된 진행률을 제거하기 위해 백 스페이스 \ b를 사용할 수 없다는 것은 사실이지만 println을 호출하는 루프로 콘솔을 지우면 제거 할 수 있습니다. 물론이 kluge는 로그 파일을 지우지 않습니다!


고정, 이클립스 화성.

이클립스 콘솔이 지연되므로 지속적인 업데이트를 위해 사용하지 않을 것입니다.


사용 : System.out.print ( '\ b') 대신 while 루프 내부의 System.out.print ( "\ b"));

참고 URL : https://stackoverflow.com/questions/3095986/how-to-get-backspace-b-to-work-in-eclipses-console

반응형