1. 程式人生 > >Runtime.getRuntime().exec()實現Java呼叫python程式

Runtime.getRuntime().exec()實現Java呼叫python程式

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