【Fortran基礎②】外部ファイルへ書き出す

Fortran

Fortranでwrite文を使用して指定した外部ファイルへ書き出す方法です。

Open文で出力先の外部ファイルを指定し、write文で必要なデータを書き出します。

基本的な流れは、read文で外部ファイルを読み込む時と同じです。

1)Open文でファイルを開く
2)write文でファイルを読み込む
3)close文でファイルを閉じる

良く使うので参考してください。

open文でファイルを開く

open文でまずファイルを開きます。

Open(ファイル番号 , file = ファイル名)

ファイル番号は、5番がキーボード入力、6番がディスプレイ出力に割り当てられているので、これらの番号以外の整数を指定します。

write文で書き出す

つぎにwirte文でファイルを書き出します。

write(ファイル番号 , 書式) 出力内容, ・・・

write文によるデータの書き出しは一行ずつ書き出されます。

複数行にわたってデータを書き出す場合は、繰り返し文を併用します。

例えば、大きさが10の1次元配列dataに格納されているデータを書き出す場合は次のようになります。

Do i=1,10
 write(10,*) data(i-1)
Loop

また、配列が2次元配列の場合は

Do i=1,10
 write(10,*) (data(i-1,j-1),j=1,2)
Loop

となります。

ファイル番号

ファイル番号は、open文で指定した番号を指定します。

モニターへ結果を出力させたいときは、ファイル番号を6番で指定するか、アスタリスク「*」を指定します。モニターのみへ出力する場合は、open文での書き出し先のファイル指定は不要です。

書式

書き出すデータなどの書式を指定します。'(書式)’ のようにシングルクオーテーションと括弧で挟んだ内側に記入し、出力内容の数だけ指定します。

出力内容が複数あり、同じ書式の場合はまとめて書くことができます。

書式については、次の記事で紹介しています。

出力内容

文字列や値を直接指定して出力するか、変数や配列を指定して格納されているデータを出力することができます。

基本的に、一度のwrite文で書き出されるデータは一行ずつとなります。同じ行内に続けてデータを書き出したいときは、カンマ「,」でつなげることで出力できます。

文字列を直接書き出す

文字列を直接書き出す場合は、シングルクオーテーションで囲むことで可能となります。

例えば、ファイル10番のファイルに”文字列”と出力する場合は次のように書きます。

write(10,*)'文字列'

close文でファイルを閉じる

ファイル内容を読み込み終えたら、close文でファイルを閉じます。read文でファイルを読み込む時と同様です。

close(ファイル番号)

以上です。

Fortranに関する記事のまとめはこちら

コメント

タイトルとURLをコピーしました