1

我想用java编写一个fortran应用程序的前端,因为据我所知fortran没有gui支持。( japi 似乎不适用于 ifort,请在此纠正我)

我想用 netbeans 构建 gui,然后简单地将命令发送到后台的 fortran 命令行程序。有关如何从 java 远程控制命令行应用程序的任何建议?

干杯,大卫

4

4 回答 4

1

你有两种可能性。

  1. Runtime.getRuntime().exec()
  2. 使用 ProcessBuilder。

我更喜欢流程构建器。它是在 1.4 版本中引入的,并提供了更好的 API。

请注意,当您从另一个进程运行一个进程时,性能会有所下降。如果这对您很重要,我建议您让您的 fortran 程序从标准输入读取命令。然后你可以运行这个程序并将你的命令推送到它的标准输入中。ProcessBuilder 非常简单。这种进程到进程的通信工作得非常快。

于 2010-12-19T16:20:46.650 回答
1

如果您的目标是 Fortran 程序的 GUI,您可以使用 dislin 图形库完全在 Fortran 中对其进行编码。dislin 主要是一个绘图包,但包括创建 GUI 的例程。它可用于多种操作系统。这些例程具有许多功能,尽管不如成熟的窗口库那么广泛。例如,您可以在 Fortran 中编写回调例程,以响应鼠标单击 dislin 窗口中的按钮。

于 2010-12-19T19:03:02.970 回答
0

我相信它

Runtime.getRuntime().exec(command);
于 2010-12-19T16:17:04.867 回答
0

此外,您可以通过命名管道进行通信。AFAIK,没有办法从java创建它们(你可以在linux上调用mkfifo,或者在windows上使用winapi),但是一旦创建,你可以将它们视为“普通”文件进行读/写操作。

于 2010-12-19T16:47:45.453 回答