将数据从 Python 程序发送到 Java 程序
Send data from Python program to Java program
我有一个 Python 程序 status.py
可以将一些状态更新(字符串)打印到控制台。但是,我需要编写一个 JavaFX 程序 Display.java
来启动 Python 程序,然后将 Python 程序的状态更新打印到 TextArea
.
为了实现这一点,我改变了 status.py
以将其状态更新写入文本文件,然后让 Java 程序将文本文件读入 TextArea
。
文本文件方式可以,但我觉得还有更好的交流方式。我正在考虑让 Python 程序将其状态更新写入套接字并让 Java 程序使用 ServerSocket
监听套接字。
使用网络方法(例如通过套接字进行通信)是否是完成 status.py
和 Display.java
之间通信的最佳方式?如果没有,完成这种进程间通信的最佳方式是什么?
从 Python 进程向 Java 进程传递信息有两种选择:
- Java 的流行网络库将使通过套接字读取数据变得容易。由于您可以轻松地在 Python 中打开套接字,因此实现套接字通信将是最简单的解决方案。
- 如果您有使用 Jython 的经验,则可以通过在 Java 代码中包含 Python 代码来消除执行进程间通信的需要。
我有一个 Python 程序 status.py
可以将一些状态更新(字符串)打印到控制台。但是,我需要编写一个 JavaFX 程序 Display.java
来启动 Python 程序,然后将 Python 程序的状态更新打印到 TextArea
.
为了实现这一点,我改变了 status.py
以将其状态更新写入文本文件,然后让 Java 程序将文本文件读入 TextArea
。
文本文件方式可以,但我觉得还有更好的交流方式。我正在考虑让 Python 程序将其状态更新写入套接字并让 Java 程序使用 ServerSocket
监听套接字。
使用网络方法(例如通过套接字进行通信)是否是完成 status.py
和 Display.java
之间通信的最佳方式?如果没有,完成这种进程间通信的最佳方式是什么?
从 Python 进程向 Java 进程传递信息有两种选择:
- Java 的流行网络库将使通过套接字读取数据变得容易。由于您可以轻松地在 Python 中打开套接字,因此实现套接字通信将是最简单的解决方案。
- 如果您有使用 Jython 的经验,则可以通过在 Java 代码中包含 Python 代码来消除执行进程间通信的需要。