Java gotoxy(x,y) for console applications
I'm writing a simple console application (80x24) in Java, is there a gotoxy(x,y) equivalent?
Solution 1:
If by gotoxy(x,y), you want to reposition your cursor somewhere specific on the console, you can usually use VT100 control codes to do this. See http://www.termsys.demon.co.uk/vtansi.htm.
Do something like
char escCode = 0x1B;
int row = 10; int column = 10;
System.out.print(String.format("%c[%d;%df",escCode,row,column));
Which should move the cursor to position 10,10 on the console.
Solution 2:
I don't think there's a built-in function to do that in Java. There's a Java curses library called JCurses that you can use though.
Solution 3:
Not without pulling in a console curses
style library...
You can try javacurses and see if that helps you.
Solution 4:
I found lanterna to be a very good library. It does not dependend on any native library but runs 100% in pure Java.
It offers a Screen
class which allows text output based on a coordinate system. For OS with a graphical environment it uses a Swing based terminal emulator. Unfortunately, you are not able to force terminal mode on Windows, so if you really need the terminal, use one of the solutions in the other answers.