我想用java编写一个fortran应用程序的前端,因为据我所知fortran没有gui支持。( japi 似乎不适用于 ifort,请在此纠正我)
我想用 netbeans 构建 gui,然后简单地将命令发送到后台的 fortran 命令行程序。有关如何从 java 远程控制命令行应用程序的任何建议?
干杯,大卫
我想用java编写一个fortran应用程序的前端,因为据我所知fortran没有gui支持。( japi 似乎不适用于 ifort,请在此纠正我)
我想用 netbeans 构建 gui,然后简单地将命令发送到后台的 fortran 命令行程序。有关如何从 java 远程控制命令行应用程序的任何建议?
干杯,大卫
你有两种可能性。
Runtime.getRuntime().exec()
我更喜欢流程构建器。它是在 1.4 版本中引入的,并提供了更好的 API。
请注意,当您从另一个进程运行一个进程时,性能会有所下降。如果这对您很重要,我建议您让您的 fortran 程序从标准输入读取命令。然后你可以运行这个程序并将你的命令推送到它的标准输入中。ProcessBuilder 非常简单。这种进程到进程的通信工作得非常快。
如果您的目标是 Fortran 程序的 GUI,您可以使用 dislin 图形库完全在 Fortran 中对其进行编码。dislin 主要是一个绘图包,但包括创建 GUI 的例程。它可用于多种操作系统。这些例程具有许多功能,尽管不如成熟的窗口库那么广泛。例如,您可以在 Fortran 中编写回调例程,以响应鼠标单击 dislin 窗口中的按钮。
我相信它
Runtime.getRuntime().exec(command);
此外,您可以通过命名管道进行通信。AFAIK,没有办法从java创建它们(你可以在linux上调用mkfifo,或者在windows上使用winapi),但是一旦创建,你可以将它们视为“普通”文件进行读/写操作。