web-dev-qa-db-ja.com

Java gotoxy(x、y)for console applications

Javaでシンプルなコンソールアプリケーション(80x24)を書いていますが、同等のgotoxy(x、y)はありますか?

21
setzamora

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の位置に移動します。

34
Tom Jefferys

Javaでそれを行うための組み込み関数はないと思います。 Java cursesライブラリと呼ばれる JCurses がありますが、これを使用できます。

8
Bill the Lizard

コンソールcursesスタイルライブラリを取得せずに...

javacurses を試して、それが役立つかどうかを確認してください。

4
John Weldon

lanterna は非常に優れたライブラリであることがわかりました。ネイティブライブラリに依存しませんが、純粋なJavaで100%実行されます。

座標系に基づくテキスト出力を可能にするScreenクラスを提供します。グラフィカル環境のOSの場合、Swingベースのターミナルエミュレータを使用します。残念ながら、Windowsでターミナルモードを強制することはできないため、本当にターミナルが必要な場合は、他の回答にある解決策の1つを使用してください。

2
CodeZombie