java调⽤含第三⽅库的py⽂件
这是⼀个⼼酸的历程。
py⽂件如下:
这⾥调⽤出现的问题主要是第三⽅包的问题,因为你的py⽂件⾥可能含有很多三⽅库⽂件,jython的jar包⾥可能不含有这个,所以这时需要你到你已有三⽅库⽂件的exe,怎么呢,去你的pycharm⾥,不然java会调⽤计算机默认的python去做,⽽你可能只是把三⽅库⽂件下载到了某⼀个程序⾥,如果我这么说你不懂那就去pycharm⾥:
java源码:
import Py;
import PySystemState;
import org.python.util.PythonInterpreter;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class py {
public static void main(String[] args) throws IOException {
try{
System.out.println("start");
python怎么读取py文件
Process pr = Runtime().exec("C:\\Users\\神奇的刘dd\\PycharmProjects\\untitled\\venv\\Scripts\\ C:\\Users\\神奇的刘dd\\PycharmProjects\\untitled\\毕设\\TestMysql.py");                          System.out.println("123");
BufferedReader in = new BufferedReader(new
InputStream()));
String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
}
in.close();
pr.waitFor();
System.out.println("end");
} catch (Exception e){
e.printStackTrace();
}
}
}
插⼊数据库也可以。亲测成功!
接受的python程序的返回值是乱码怎么办?
import Py;
import PySystemState;
import org.python.util.PythonInterpreter;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class py {
public static void main(String[] args) throws IOException {
try{
System.out.println("start");
Process pr = Runtime().exec("C:\\Users\\神奇的刘dd\\PycharmProjects\\untitled\\venv\\Scripts\\ C:\\Users\\神奇的刘dd\\PycharmProjects\\untitled\\毕设\\QQNews.py");                          System.out.println("123");
BufferedReader in = new BufferedReader(new
InputStream(),"GBK"));
String line;
while ((line = in.readLine()) != null) {
//String res=new Bytes("iso8859-1"), "utf-8");
System.out.println(line);
}
in.close();
pr.waitFor();
System.out.println("end");
} catch (Exception e){
e.printStackTrace();
}
}
}
这样设置字符集为GBK即可。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。