使用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