Witam,
mam pytanie jak zastosować w Javie czyszczenie ekranu konsoli, w moim przypadku chodzi o cmd.exe z WinXP. Czy nie istnieje w Javie podobna funkcja jak w Pascalu czy C++? Chodzi oczywiście o clrscr(). Przeszukując google i strony o tematyce Javy spotkałem tylko prymitywną jak na mój gust propozycję czyszczenia typu:
for(int i=0;i<100;i++){
System.out.println("");
}
Może nie identyczną ale w tym guście. Na zagranicznym forum jest jeszcze sposób aby stosować procedury C++ (czyszczenia ekranu) umieszczając je w biblioteki dll i potem importując do bibliotek Javy. Czy to jedyne rozwiązanie? Jestem rozczarowany! :) Przechodzi się przez kolejne rozdziały "Thinking in Java", czyta o niezmiernych możliwościach przenośności Javy, jak również rozwiązaniu wielu problemów programistów C++...i nagle przychodzi chęć na wydawałoby sie prostego "clear screen" i zonk! Czy to aż tak nie doskonała funkcja że nie została przeniesiona do JAVY? Bardzo prosze wszystkich o rade w tej sprawie i Waszych propozycjach jej rozwiązania. Rozwiązanie to ma na celu wyczyszczenie ekranu i powrót karetki do 0 kolumny i 0 wiersza ekranu, dokłanie jak to ma miejsce przy clrscr().
Pozdr
Jesli chodzi o system windows
Jesli chodzi o system windows to nie prościej będzie:
Runtime.getRuntime().exec("cmd cls");
Proponuje cos
Proponuje cos takiego:
wyczysc()
{
System.out.println("\033[2J"); // Czyści terminal
System.out.println("\033[0;0f"); // Ustawia kursor w lewym, górnym rogu
}
to zadziała jeśli mamy
to zadziała jeśli mamy włączone ANSI w systemie ( poprzez dodanie linii do pliku config.sys : device=c:\windows\command\ansi.sys )
jeśli chcesz pisać aplikacje w trybie tekstowym możesz użyć odpowiednich bibliotek:
http://www.pitman.co.za/projects/charva/ albo
http://www.nongnu.org/jcurzez/
Dopiero zaczynam przygodę z
Dopiero zaczynam przygodę z Java ale wydaje mi się, że najlepiej byloby w tym przypadku stworzyć sobie funkcję:
public void wyczysc()
{
System.out.println("\n\n\n\n\n\n\n\n\n");//dowolna ilosc n
}
potem możemy tylko wpisywac:
wyczysc();
nawet bez tworzenia funkcji, w tej wersji mamy tylko jedną komendę i nie musimy bawić się w pętle.
mija dzień od premiery Java SE 6,
No proszę, taka fajna ta Java 6, dodali tam klasę java.io.Console, ale jakoś nie zrobili w niej metody do czyszczenia ekranu :/ dziwne.
w temacie.....
Myśle że rozwiązanie josh'a pozostanie tym najlepszym na tą chwile dla mnie...miałem nadzieje że oszczędze sobie dodatkowego opisywania i zmniejsze ilość kodu w programie mojej pracy zaliczeniowej. Nic trzeba życ dalej... :)
jeśli pgrzyb ma rację, to...
...na pocieszenie może pozostaje fakt, że jeśli chcesz jakiś tekst z programu wyrzucać to możesz łatwo wykorzystać Swinga produkując okienko wypełnione obiektem klasy JTextArea albo formatowalnym tekstem JTextPane (kilka linijek kodu i gotowe).
Niestety, ale bynajmniej wed
Niestety, ale bynajmniej według mnie, nie da się tego lepiej zrobić, bynajmniej jak narazie.
Tak wogóle to Java nie posiada za dobrych rozwiązań dla konsoli.
Jedynym pocieszeniem może być to, że w następnej wersji ma być klasa Console, któro może i takie coś bedzie posiadała.