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

 

https://blog.csdn.net/hp7981/article/details/478939

转载于:https://www.cnblogs.com/heqiyoujing/p/10061007.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值