zoukankan      html  css  js  c++  java
  • Java调用本地Python脚本

    package com.yang.ftpdemo.pyzbar;
    
    import java.io.BufferedReader;
    import java.io.InputStreamReader;
    
    public class PyZbarTest {
    
        public static void main(String[] args) {
            //这里传递的其实是OS级别的命令
            System.out.println(ExecutePyzbar("python", "C:\Users\Tyrael\Desktop\pyzbar\PyZbarTest.py", null));
        }
    
        private static String ExecutePyzbar(String lang, String scriptPath, String base64) {
            String[] arguments = new String[]{lang, scriptPath};
            try {
                Process process = Runtime.getRuntime().exec(arguments);
                int re = process.waitFor();
                
                //java代码中的process.waitFor()返回值为0表示调用python脚本成功,1表示调用失败,这个有点【反直觉】
                if (re == 0) {
                    try (BufferedReader in = new BufferedReader(new InputStreamReader(process.getInputStream(), "GBK"));) {
                        return in.readLine();
                    }
                } else {
                    System.err.println("脚本调用失败");
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }
    }
    
  • 相关阅读:
    python-多任务-进程
    注解_Annotation
    ZIP压缩输入/输出流
    什么是API,这篇文章让你豁然开朗
    异常处理(在控制台输入数据)
    控件监听与面板监听
    多态与继承
    Java——socketser与cli
    20170307
    20180305
  • 原文地址:https://www.cnblogs.com/JaxYoun/p/13450895.html
Copyright © 2011-2022 走看看