使用Runtime.getRuntime().exec()来实现Java调用python,调用代码如下所示:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader; public class Test2 { public static void main(String[] args) throws IOException, InterruptedException {
System.out.println("start python");
//需传入的参数
// String a = "aaa", b = "bbb", c = "cccc", d = "dddd";
//设置命令行传入的参数
String[] arg = new String[]{"python", "pyfile/detect.py"};
Process process = Runtime.getRuntime().exec(arg); BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line; while ((line = in.readLine()) != null) {
line = decodeUnicode(line);
System.out.println(line);
}
in.close();
System.out.println("end");
process.waitFor();
}
}
如果Runtime.getRuntime().exec()执行重定向命令方法,可以用下面的方法:
String path = "data/shell.sh";
String[] cmd = { "sh", "-c", "ls > ”+path };
Runtime.getRuntime().exec(cmd);
https://blog.csdn.net/hp7981/article/details/478939