Hallo zusammen,
mal wieder ein kleines Java-Problemchen. Das Grundproblem ist eigentlich, dass ich anzeigen möchte, wie weit mein Programm in seiner Berechnung fortgeschritten ist. Was mit Java ja einfach geht, ist, über
System.out.println(…)
Sachen (zum Beispiel einen Counter) zeilenweise untereinander in die Kommandozeile zu schreiben. Das ist aber gar nicht so super, denn nach 1 Mio Ausgaben ist alles was am Anfang stand irgendwie weg. Die optimalste Lösung wäre es, irgendwie in die Kommandozeile schreiben zu können:
>> Progress: X
und X wird dann hochgezählt. Dazu müsste man an der Stelle verschiedene Ausgaben machen, die die alte immer wieder überschreiben - ich nehme mal an, das geht nun wirklich nicht.
Also ist die momentan aktuelle Idee, eine zurechtgefriemelte Progressbar in die Kommandozeile zu setzen. Das soll in etwa so aussehen:
>> Progress: 0% 50% 100%
>> | | |
>> #########################
(okay, das zerhaut mir hier die Software irgendwie, aber ich denke, es ist erkennbar, was ich meine)
wobei die Reihe aus Rauten nach und nach aufgebaut wird. Die Rauten wollte ich durch
System.out.print("#")
schreiben lassen, aber leider passiert dabei überhaupt nichts. Die Ausgaben kommen erst dann alle gesammelt, wenn das nächste „System.out.println()“ kommt. Den PrintStream zu flushen nach jeder der „#“-Ausgaben bringt nichts.
Jetzt die eigentliche Frage: wie gebe ich Zeichen in einer Zeile nacheinander aus? Und geht nicht vielleicht doch irgendwie die erste version, so dass ich mir die Progressbar schenken kann?
Viele Grüße
Schorsch
PS: nein, kein GUI.