【发布时间】:2016-01-12 08:29:21
【问题描述】:
如何在 java 中使用ProcessBuilder 调用 Python 文件中的方法?我的 Python 文件有一个类和三个方法。另外,如何从 ProcessBuilder 设置我的 python 方法参数?
这是我的 Java 代码:
public void con3(){
try {
ProcessBuilder pb = new ProcessBuilder("C:\\Python34\\python.exe", "D:\\New folder\\test\\src\\NewCodes\\pickel4output.py","may","vay");
Process p = pb.start();
System.out.println(p);
BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
System.out.println("Running Python starts: " + line);
int exitCode = p.waitFor();
System.out.println("Exit Code : "+exitCode);
line = in.readLine();
System.out.println("First Line: " + line);
while ((line = in.readLine()) != null){
System.out.println("Python Output: " + line);
}
}
}
这是我的 Python 代码的一部分:
import pickle
class Test(object):
def pic(self,var1,var2):
print(var1)
print(var2)
dic={}
f=open('D:\\New folder\\test\\src\\NewCodes\\dicfile.pck','rb')
dic=pickle.load(f)
for record in range(4):
dic=pickle.load(f)
print(dic)
dic.clear()
f.close()
【问题讨论】: