我有一个用C语言开发的控制台应用程序。我需要从我的java代码中调用这个程序函数。另外,我需要传递一些参数,例如List<>调用后的主函数。我研究了一个找到的this链接,但是它是用于J Python代码的。我们是否有类似的C Python设施?
答案 0 :(得分:0)
import java.io.IOException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class SystemCall{
private static Log logger = LogFactory.getLog(SystemCall.class);
public static int execute(String command) {
int result = 0;
if (command == null){
throw new RuntimeException("harness command is null");
}
Runtime r = Runtime.getRuntime();
try {
Process p = r.exec(command);
try {
if (p.waitFor() != 0) {
result = p.exitValue();
}
} catch (InterruptedException e) {
logger.error("System call interupted.", e);
//TODO
} finally {
//TODO
}
} catch (IOException e) {
logger.error("IO error in system call.", e);
//TODO
}
return result;
}
}