1

私が知る限り、fortran には GUI サポートがないため、Java を使用して fortran アプリケーションのフロントエンドをコーディングしたいと考えています。(japi は ifort では動作しないようです。これについては訂正してください)

netbeans を使用して gui を構築し、コマンドをバックグラウンドで fortran コマンドライン プログラムに送信するだけです。Java からコマンドライン アプリケーションをリモート コントロールする方法について何かアドバイスはありますか?

乾杯、デビッド

4

4 に答える 4

1

目的が Fortran プログラムの GUI である場合は、dislin グラフィックス ライブラリを使用して Fortran で完全にコーディングできます。dislin は主にプロット パッケージですが、GUI を作成するためのルーチンが含まれています。いくつかのオペレーティング システムで使用できます。これらのルーチンには多くの機能がありますが、本格的なウィンドウ ライブラリほど広範ではありません。たとえば、Fortran でコールバック ルーチンをコーディングして、dislin ウィンドウのボタンのマウス クリックに応答できます。

于 2010-12-19T19:03:02.970 に答える
1

2 つの可能性があります。

  1. Runtime.getRuntime().exec()
  2. プロセスビルダーを使用します。

私はプロセスビルダーを好みます。バージョン 1.4 で導入され、より優れた API を提供します。

あるプロセスを別のプロセスから実行すると、パフォーマンスが低下することに注意してください。それがあなたにとって重要な場合は、標準入力からコマンドを読み取るように fortran プログラムを作成することをお勧めします。次に、このプログラムを実行して、コマンドを標準入力にプッシュできます。ProcessBuilder を使用すると非常に簡単です。このようなプロセス間通信は非常に高速に機能します。

于 2010-12-19T16:20:46.650 に答える
0

また、名前付きパイプを介して通信することもできます。AFAIK、Javaからそれらを作成する方法はありません( Linuxでmkfifoを呼び出すか、Windowsでwinapiを使用する必要があります)が、作成すると、読み取り/書き込み操作用の「通常の」ファイルとして扱うことができます。

于 2010-12-19T16:47:45.453 に答える
0

私はそれを信じています

Runtime.getRuntime().exec(command);
于 2010-12-19T16:17:04.867 に答える