) если процесс печатает ошибку вывода. Вы можете перенаправить поток ошибок во входной поток, если вы используете

ользую среду выполнения для запуска команд командной строки из моей Java-программы. Однако я не знаю, как я могу получить вывод, который возвращает команда.

Вот мой код:

Runtime rt = Runtime.getRuntime();

String[] commands = {"system.exe" , "-send" , argument};

Process proc = rt.exec(commands);

Я пытался делатьSystem.out.print(proc); но это ничего не вернуло. Выполнение этой команды должно вернуть два числа, разделенных точкой с запятой, как я могу получить это в переменной для печати?

Вот код, который я использую сейчас:

String[] commands = {"system.exe","-get t"};

Process proc = rt.exec(commands);

InputStream stdin = proc.getInputStream();
InputStreamReader isr = new InputStreamReader(stdin);
BufferedReader br = new BufferedReader(isr);

String line = null;
System.out.println("<OUTPUT>");

while ( (line = br.readLine()) != null)
     System.out.println(line);

System.out.println("</OUTPUT>");
int exitVal = proc.waitFor();
System.out.println("Process exitValue: " + exitVal);

Но я ничего не получаю в качестве вывода, но когда я сам запускаю эту команду, она работает нормально.

Ответы на вопрос(1)

Ваш ответ на вопрос