# Anzahl Zeichen pro Zeile auf der Konsole



## neonfly (7. Dez 2009)

Nabend!

Ich habe eine Serveranwendung, die Infos auf der Konsole ausgibt.

Nun brauche ich die maximal möglichen Zeichen / Zeile um folgende Ausgabe zu realisieren:

#> Ich bin eine Info...............[INFO]
#> Ich bin eine andere Info....[INFO]

Gibt es eine Möglichkeit die Zeichenanzahl auszulesen?


----------



## Ebenius (7. Dez 2009)

Direkt in Java kenne ich keine Möglichkeit dies abzufragen.

Ebenius


----------



## neonfly (7. Dez 2009)

Warum nur hab ich mir das gedacht?!
Stell ichs halt an Anfang.

Merci.


----------



## Empire Phoenix (8. Dez 2009)

Zumindest bei windows basierten systemen sind die (standartmäßig) immer gleich, also einfach mal zählen ^^


----------



## faetzminator (8. Dez 2009)

80!


----------



## L-ectron-X (8. Dez 2009)

faetzminator hat gesagt.:


> 80!


Das mag für Windows stimmen, unter Linux haut das schon nicht mehr hin.


----------



## Ebenius (8. Dez 2009)

Ich dachte/denke/hoffe, das war einfach nur ein Scherz. 

Ebenius


----------



## hdi (8. Dez 2009)

Hm, kommt drauf an wie wichtig dir das ist. Wenn's um Leben und Tod geht, dann _kann _man das denk ich schon irgendwie machen:


```
TerminalListener extends Thread{
   public void run(){
        while(true){
               // make screenshot of user desktop
               // scan the picture for a pixel pattern that looks like "java MyProgram" or other outputs from your program
               // get the background color of that...
               // go left & right, until the background color changes => find bounds of terminal
               // calculate width of terminal from these bounds and the desktop resolution
               // pass the calculated width into your printing object
               // sleep 100ms
        }
}
```

Das reagiert jetzt sogar darauf wenn der User das Terminal resized 

aber...die Frage ist ob sich der Aufwand für sowas wie


> scan the picture for a pixel pattern that looks like "java MyProgram" or other outputs


 lohnt. Und die Antwort ist: Nein.


----------



## Ebenius (8. Dez 2009)

Ich rate auf jeden Fall davon ab, die Konsolenbreite (wie auch immer) zu ermitteln. Gerade bei einer Serveranwendung werden die Logs in der Regel umgeleitet in eine Datei. Welche Konsolenbreite auch immer zur Laufzeit Deines Programms vorherrscht (wenn es überhaupt eine Konsole gibt), sie muss nichts mit der Konsole zu tun haben, die das Log später betrachten wird. Am besten einfach keine Zeilen umbrechen. Wenn einem die Ansicht in der Konsole nicht passt, kann man's immer noch einfach durch sed oder awk jagen (oder unter Windows einfach Pech haben oder ein riesiges Programm installieren das die Konsolenausgabe in eine GUI packt und aufhübscht :lol. Falls unbedingt nötig, übergib dem Prozess halt System-Properties in der Art [c]-Dmy.app.logger.lineWrap=true -Dmy.app.logger.lineLength=78[/c].

Ebenius


----------

