怎样在java类中调用带参数的可执行文件(比如:.exe,.sh等等)?

2025-04-29 04:07:13
推荐回答(1个)
回答1:

比如调用exe程序"java -version":

String[] cmd = new String[] {"java", "-version"};
Process process = Runtime.getRuntime().exec(cmd);
BufferedReader r = new BufferedReader(new InputStreamReader(process.getErrorStream()));
String l = null;
while((l = r.readLine()) != null) {
System.out.println(l);
}

Process有两个流可以读取外部程序的标准输出(就是运行结果啦),一个是getInputStream,一个是getErrorStream。

如果要调用C或C++动态链接库中的函数的话,就要复杂一些,要用到JNI了。