pantalla metodo limpio limpiar consola como colores borrar abrir java eclipse backspace

metodo - java clear console eclipse



¿Cómo hacer retroceder / b para trabajar en la consola de Eclipse? (4)

Estoy creando una pequeña aplicación Java que debería tener un indicador de progreso con porcentajes. En cada bucle, utiliza la tecla de retroceso /b para eliminar el progreso mostrado antes de mostrar el siguiente porcentaje.

Aquí hay un ejemplo simplificado:

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!"); }

Esto funciona perfectamente en el símbolo del sistema, pero el carácter de retroceso no se reconoce en la consola de Eclipse (versión de Galileo 20090920-1017). En su lugar, muestra un cuadrado vacío que denota un carácter desconocido. Ver captura de pantalla:

¿Cómo hago para que Eclipse "muestre" correctamente el retroceso? Es decir, deja que elimine el personaje anterior.

En realidad, esto no es sorprendente, ya que solo se ejecutará en la consola de comandos, pero también sería bueno hacerlo funcionar en Eclipse :)


Bueno, es cierto que no puede usar la tecla de retroceso / b para eliminar el progreso mostrado, pero puede eliminarlo borrando la consola con un bucle llamando a println. ¡Por supuesto que este kluge no borrará tu archivo de registro!


Reparado, Eclipse Mars.

Tenga en cuenta que no lo usaría para hacer actualizaciones constantes, ya que la consola de eclipse está rezagada.


use: System.out.print ("/ b") dentro del ciclo while, en lugar de System.out.print (''/ b'');


Eclipse Bug # 76936. No contaría con ellos para solucionarlo, y no hay soluciones alternativas en la lista.

Es posible que tenga suerte para encontrar un complemento que proporcione una consola más avanzada.