Не нашел в Гугле, поэтому обращаюсь к вам. Пример: вывод времени на консоль в реальном времени. Желательно-полегче.
3 ответа
А зачем очищать консоль? И напомню что могут быть (и есть) случаи когда консоль принципиально неочищаема - все зависит от типа терминала и оси.
Например если консоль/терминал типа VT100, то очистка консоли производится стандартным ESCAPE кодом: Esc[2J
(источник)
Виндовая консоль не поддерживает ансишные искейп коды, так что ничего лучшего Backspace не придумать (ну разве что выдавать CLS на shell DOS/Windows).
В общем как ни делай, а все криво.
-
Как альтернатива Backspace, можно просто сдвигать консоль на N строк.– DexCommented 21 авг. 2012 в 22:48
Так в принципе работает, но не думаю что это хороший пример:
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) {
}
}
}
}
-
1
-
1
-
-
@rberla, да Вы что?! неужели?! а как мы должны были этого догадаться? данный реквест разбивается на две части, гуглите лучше и с энтузиазмом Commented 20 авг. 2012 в 17:58
-
В данном коде очистка консоли отсутствует.Как можно догадаться по недвусмысленной теме, главное-именно очистка консоли!– rberlaCommented 21 авг. 2012 в 10:10
cout << '\x08' - В С/С++ так. Думаю, Java мало чем отличается. Суть в том, что в stdout надо послять backspace столько раз, сколько нужно. Соответственно, гуглить надо код клавиши.
-
3
-