Java gotoxy (x, y) для консольных приложений

Я пишу простое консольное приложение (80x24) в Java, есть ли эквивалент gotoxy (x, y)?

Ответы

Ответ 1

Если с помощью gotoxy (x, y) вы хотите переместить курсор где-то конкретно на консоль, вы можете обычно использовать управляющие коды VT100 для этого. См. http://www.termsys.demon.co.uk/vtansi.htm.

Сделайте что-то вроде

char escCode = 0x1B;
int row = 10; int column = 10;
System.out.print(String.format("%c[%d;%df",escCode,row,column));

Для перемещения курсора в положение 10,10 на консоли.

Ответ 2

Я не думаю, что в Java есть встроенная функция. Там есть библиотека curses Java, называемая JCurses, которую вы можете использовать.

Ответ 3

Не затягивая консольную библиотеку стилей curses...

Вы можете попробовать javacurses и посмотреть, поможет ли это вам.

Ответ 4

Я нашел лантерну очень хорошей библиотекой. Он не зависит от какой-либо нативной библиотеки, но работает на 100% на чистой Java.

Он предлагает класс Screen который позволяет вывод текста на основе системы координат. Для ОС с графической средой используется эмулятор терминала на основе Swing. К сожалению, вы не можете принудительно включить режим терминала в Windows, поэтому, если вам действительно нужен терминал, используйте одно из решений в других ответах.