プロが教える店舗&オフィスのセキュリティ対策術

Fortranで以下のように出力ファイルを指定して、

OPEN
&(Unit=4,Iostat=OS,
&File='F:\Data\KS-22\AData\txt\
&dat'//runy//'/'//runm//'/'//rund//'_'//runh//'.csv')

指定した出力ファイルに以下のようにデータを書き込むようにしたところ、

WRITE(4,444)
&I,
&UxGr(I),UyGr(I),UzGr(I)

444 FORMAT(I5,',',
+ 3(F 6.2,','))

指定した出力ファイルではなく、「fort.4」というファイルにデータが書き込まれてしまいます。

この原因はどこにあるのか、ご教示いただけないでしょうか。よろしくお願い致します。

A 回答 (2件)

Fortran は全く使っていないが.



例えば
File に与えた値が実は不正である
とかいう可能性はないかねぇ. \ と / が混在しているのが気になる.

あるいは
実はそれより前に装置番号 4 に対する (入) 出力が実行されている
とか.

もっと極端に
program hoge
open(UNIT=4, FILE='hoge.csv')
write(4, '(I3)') 46
end program hoge
で試してみたらどうなるかなぁ.
    • good
    • 0

Unit番号と、ファイル名の関連付けは処理系依存です。


処理系のマニュアルを見るしかない。

おそらくopenでファイル名を指定できない処理系なのでしょう、としか言いようがない。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!