Командная строка внутри Java-программы - PullRequest
0 голосов
/ 27 октября 2011

Итак, я хочу создать Java-приложение, которое во время работы может запускать пользовательские команды (не команды Windows, команды для моего приложения) из командной строки, я уже могу это сделать, но я хотел бы получить приглашениенапример, >, где вы вводите команды, как я могу вывести >, а затем удалить его, когда пришло время напечатать что-нибудь еще в этой строке?

Ответы [ 3 ]

6 голосов
/ 27 октября 2011

В Java 6 вы можете использовать для этого класс Console.В частности, метод readLine.Из API:

public String readLine (String fmt, Object ... args)

   Provides a formatted prompt, then reads a single line of text from the console. 
1 голос
/ 27 октября 2011

Я согласен с рекомендацией PaoloVictor об использовании Console, но если вам интереснее архитектура, я мог бы предложить REPL (Read, Evaluate, Print Loop). Где бы вы сделали что-то вроде этого.

init();
while(1){

   System.out.print("myProgram>");
   String cmd = Console.readLine(String fmt, Object... args);
   evaluate(cmd);
}
0 голосов
/ 27 октября 2011

Я нашел хорошую библиотеку, JLine , делает именно то, что я хочу.

...