実行中にコマンドラインからカスタムコマンド(Windowsコマンドではなく、自分のアプリケーション用のコマンド)を実行できるJavaアプリケーションを作りたいと思っていますが、 dを入力すると、>
のようなプロンプトが表示されます。>
を出力して、その行に何か他のものを印刷するときはどうすれば削除できますか?Javaプログラム内のコマンドプロンプト
0
A
答えて
6
Java 6の場合は、Console
クラスを使用できます。具体的には、方法はreadLine
です。 APIから:
パブリック文字列のreadLine(文字列fmtは、オブジェクト...引数)
Provides a formatted prompt, then reads a single line of text from the console.
1
私はConsole
を使用してのPaoloVictorの勧告に同意しますが、アーキテクチャの詳細興味があれば私はREPL(Read、Evaluate、Print Loop)を提案するかもしれません。このようなことをどこでやるか。
init();
while(1){
System.out.print("myProgram>");
String cmd = Console.readLine(String fmt, Object... args);
evaluate(cmd);
}
0
私は良いライブラリ、JLineを見つけました。まさに私が欲しいものです。
なぜそれを削除しますか? – Sibbo
私はおそらくこれをはっきりと説明していないでしょう、つまり、すべての出力の最後に '>'があり、コマンドの右側にコマンドを入力すると、プロンプトのように見えます。 –
コマンドを実行した後に '>'をコンソールから削除する必要がある場合は、おそらくバックスペース文字(ASCIIコード8)を使用しても問題ありませんか?ハッキーみたいですが、誰が知っていますか? –