概述
[本文出自天外归云的博客园]
在网上查了很多方法都不成功,在google上搜到一篇文章,做了一些小修改,能够处理中文输出。提取一个运行python脚本的Java工具类如下:
package com.autox.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; public class RunPython { public static ArrayList<String> run_py(String script) { String s = null; ArrayList<String> result = new ArrayList<String>(); ArrayList<String> error = new ArrayList<String>(); try { Process p = Runtime.getRuntime().exec(script); BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream(), "GBK")); BufferedReader stdError = new BufferedReader(new InputStreamReader(p.getErrorStream())); while ((s = stdInput.readLine()) != null) { result.add(s); } while ((s = stdError.readLine()) != null) { error.add(s); } if (error != null) { System.out.println(error); } } catch (IOException e) { e.printStackTrace(); } return result; } }
Java中调用方法如下:
ArrayList<String> result = RunPython.run_py("python script_path args"); for (String item : result) { System.out.println(item); }
其中script_path需替换为Python脚本路径,args替换为向脚本传递的参数。
最后
以上就是感动水壶为你收集整理的Java调用Python脚本工具类的全部内容,希望文章能够帮你解决Java调用Python脚本工具类所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复