В Scala или Java, как вывести на консоль строку, заменяющую предыдущее содержимое вместо добавления? - PullRequest
10 голосов
/ 05 сентября 2010

Приложение Scala выполняет некоторую обработку данных.Было бы неплохо показать прогресс обработки в процентах, перезаписывая предыдущее значение при изменении, а не добавлять новое значение к уже отображенному.Как добиться этого эффекта?Я использую Scala 2.8 в Linux.

Ответы [ 2 ]

11 голосов
/ 05 сентября 2010

Ваши самые простые варианты - использовать возврат каретки без перевода строки "\r" или символ возврата на * "\u0008". Если вы возвращаетесь назад, вам нужно следить за тем, сколько символов вы выпустили, чтобы вы могли создать достаточно резервных копий (и убрать все лишние). Если вы возвращаете карету, вам нужно переписать всю строку (и написать пробелы, чтобы убрать лишние).

2 голосов
/ 05 сентября 2010

Если бы вы программировали на C / C ++, ответ был бы однозначно "ncurses".

Существует реализация curses в Java, которая может вас заинтересовать:

JavaПроклятия

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...