0

Не нашел в Гугле, поэтому обращаюсь к вам. Пример: вывод времени на консоль в реальном времени. Желательно-полегче.

3 ответа 3

5

А зачем очищать консоль? И напомню что могут быть (и есть) случаи когда консоль принципиально неочищаема - все зависит от типа терминала и оси.

Например если консоль/терминал типа VT100, то очистка консоли производится стандартным ESCAPE кодом: Esc[2J (источник)

Виндовая консоль не поддерживает ансишные искейп коды, так что ничего лучшего Backspace не придумать (ну разве что выдавать CLS на shell DOS/Windows).

В общем как ни делай, а все криво.

1
  • Как альтернатива Backspace, можно просто сдвигать консоль на N строк.
    – Dex
    Commented 21 авг. 2012 в 22:48
1

Так в принципе работает, но не думаю что это хороший пример:

import java.text.SimpleDateFormat;
import java.util.Date;

public class Main {
    public static void main(String[] args) {
        SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
        System.out.print(formatter.format(new Date()));
        for (;;){
            try {
                Thread.sleep(1000);
                System.out.print('\r');
                System.out.print(formatter.format(new Date()));
            } catch (InterruptedException e) {
            }
        }
    }
}
6
  • 1
    У меня не сработало (Win 7, Eclipse)
    – Dex
    Commented 19 авг. 2012 в 23:25
  • 1
    а в чем проблема?
    – zifelok
    Commented 20 авг. 2012 в 7:14
  • Главное-ОЧИСТКА КОНСОЛИ
    – rberla
    Commented 20 авг. 2012 в 8:29
  • @rberla, да Вы что?! неужели?! а как мы должны были этого догадаться? данный реквест разбивается на две части, гуглите лучше и с энтузиазмом
    – Viacheslav
    Commented 20 авг. 2012 в 17:58
  • В данном коде очистка консоли отсутствует.Как можно догадаться по недвусмысленной теме, главное-именно очистка консоли!
    – rberla
    Commented 21 авг. 2012 в 10:10
-2

cout << '\x08' - В С/С++ так. Думаю, Java мало чем отличается. Суть в том, что в stdout надо послять backspace столько раз, сколько нужно. Соответственно, гуглить надо код клавиши.

2
  • 3
    Я думаю, в этом случае java довольно далеко удалилась от С
    – rberla
    Commented 19 авг. 2012 в 19:44
  • Возможно, но не в работе с консолью.
    – RomanoO
    Commented 20 авг. 2012 в 15:13

Всё ещё ищете ответ? Посмотрите другие вопросы с метками или задайте свой вопрос.