У меня есть C код, который принимает входные данные из консоли, как,как передать параметры процесса во время выполнения
main() {
int value;
printf("Enter a value");
scanf("%d", &value);
printf("the value is, %d", value);
return;
}
теперь я скомпилировать и создать файл с расширением .exe. (скажем, test.exe)
После этого я хочу назвать этот исполняемый файл из java-кода.
так, я использовал
public class JavaTest {
static String s=null;
public static void main(String[] args) throws java.io.IOException, java.lang.InterruptedException {
java.lang.Runtime rt = java.lang.Runtime.getRuntime();
System.out.println("start");
java.lang.Process p = rt.exec("test.exe");
BufferedReader stdInput = new BufferedReader(new
InputStreamReader(p.getInputStream()));
while ((s = stdInput.readLine()) != null) {
System.out.println(s);
}
p.waitFor();
System.out.println("done.");
}
}
Очевидно, что не работает. Мой вопрос: как передать целое число в процесс во время выполнения? Я не хочу передавать его в качестве параметра командной строки.
Какая версия Java? – fglez
Это последний, jdk 7 – se7en
См. Принятый ответ http://stackoverflow.com/questions/3643939/java-process-with-input-output-stream – fglez