2011-10-27 12 views
0

実行中にコマンドラインからカスタムコマンド(Windowsコマンドではなく、自分のアプリケーション用のコマンド)を実行できるJavaアプリケーションを作りたいと思っていますが、 dを入力すると、>のようなプロンプトが表示されます。>を出力して、その行に何か他のものを印刷するときはどうすれば削除できますか?Javaプログラム内のコマンドプロンプト

+0

なぜそれを削除しますか? – Sibbo

+0

私はおそらくこれをはっきりと説明していないでしょう、つまり、すべての出力の最後に '>'があり、コマンドの右側にコマンドを入力すると、プロンプトのように見えます。 –

+1

コマンドを実行した後に '>'をコンソールから削除する必要がある場合は、おそらくバックスペース文字(ASCIIコード8)を使用しても問題ありませんか?ハッキーみたいですが、誰が知っていますか? –

答えて

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を見つけました。まさに私が欲しいものです。