Запуск «cmd.exe» на Java и запись на его стандартный вводJAVA

Программисты JAVA общаются здесь
Ответить
Гость
 Запуск «cmd.exe» на Java и запись на его стандартный ввод

Сообщение Гость »


Есть пара вопросов, подобных этому (например, здесь и здесь), но ответы не работают.

Вот моя программа:

ProcessBuilder pb = новый ProcessBuilder("cmd", "/k"); Процесс p = pb.start(); Writer w = новый PrintWriter(p.getOutputStream()); w.write("эхо ABCD\n"); w.flush(); Это запускается, но окно консоли не появляется.

Если вместо этого я сделаю это: ProcessBuilder pb = new ProcessBuilder("cmd", "/c", "start"); он создаст окно консоли, но не примет входные данные («echo ABCD\n»), потому что новое окно консоли на самом деле является подпроцессом созданного мной процесса cmd.

Как мне создать процесс cmd, чтобы окно консоли создавалось сразу (без команды «старт»), чтобы я мог отправлять в него текст и он отображался в окне (как если бы оно пришло со стандартного ввода консоли)?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»