У меня есть ситуация, когда я ищу свою программу Java для запуска в качестве скрипта BASH, который будет запускать программу на C++.Вывести на C++ программу как вход Java
Я ищу, чтобы выводить вывод программы на С ++ (текстовые строки, напечатанные на терминал) в качестве ввода в программу Java.
Моя первая попытка заключалась в использовании следующего кода для чтения на входе от терминала, но я не был уверен, как его преобразовать с пользовательского ввода, автоматически беря ввод C++.
Console c;
c = System.console();
if (c == null) {
System.out.println("No console.");
System.exit(1);
}
String data = c.readLine();
Затем я попытался с помощью InputStreamReader
вместе с перенаправляет вывод C++ программе:
Java код:
BufferedReader input = null;
try {
input = new BufferedReader(new InputStreamReader(System.in));
String htmlLine = null;
while ((htmlLine = input.readLine()) != null) {
System.out.println(htmlLine);
}
}
Команда для перенаправления вывода:
java -jar program.jar arg1 arg2 arg3 < ./runActivities.sh
Однако результатом является то, что он просто печатает содержимое runActivities.sh
к терминалу.
Это сработало спасибо! Не думал, что это будет так просто. – Colin747
Да, но вы не можете запустить его из java по запросу –
Мне просто нужно, чтобы он работал при первом запуске. – Colin747