- ベストアンサー
外部ファイルの有無で分岐するプログラムの作成
Fortranなのですが、実行ファイルabc.exeと同じフォルダにxxx.datというファイルが存在するならば、○○○、無いならば××× という風にファイルの有無で操作を変える方法を教えて頂きたいのですが。 例えばOpen文でのエラー処理(例外処理)でできるでしょうか。他に方法があればお教え頂ければと思いますが。 Cでの処理が参考になるかも知れません。よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
access関数を使うのが一般的なようです。 1.4 Fortran ライブラリルーチンリファレンス (Sun Studio 12: Fortran ライブラリ・リファレンス) https://docs.oracle.com/cd/E19205-01/820-1201/aetbk/index.html INTEGER*4 access, status status = access ( 'xxx.dat', ' ' ) ! 空白モード if ( status .eq. 0 ) write(*,*) "ファイル存在" if ( status .ne. 0 ) write(*,*) 'ファイルはない', status > Cでの処理が参考になるかも知れません。 PathFileExistsなどのWin32APIなんか使う方法もあると思います。
お礼
回答ありがとうございます。実際に操作してみて確認しました。 intelのfortranです。 このような操作方法は本に載っていないように思います。(載っていても気づかなかっただけかも知れませんが。) 本に書いてあるのは標準のものであって、処理系に依存してコマンドが用意されているかも知れません。今回はたまたま在ったということかも知れません。