Я створюю невеликий додаток 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 правильно "відображати" зворотний простір? Тобто дозвольте йому видалити попередній символ.
Насправді це не showstopper, оскільки його буде просто запускати в командній консолі, але було б непогано змусити його працювати і в Eclipse :)