【发布时间】:2013-02-21 11:20:02
【问题描述】:
我有从控制台获取输入的 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.");
}
}
显然,这是行不通的。我的问题是,如何在运行时将整数传递给进程?我不想将它作为命令行参数传递。
【问题讨论】:
-
最新的,jdk 7
标签: java parameters process runtime.exec