並び順番 WRITE 文は,対応する I/O 並び項目のデータ型を使ってデータ形式を決定することで,データを 2 進形式から文字形式に転送します。その後,変換されたデータは外部ファイルに書き込まれます。
一般に,出力として転送された値は,入力として転送された値と同じ形式を持ちます。
次表に,個々の組込みデータ型の基本出力書式を示します。並び出力の基本書式 | ||
---|---|---|
データ型 | 出力書式 | |
BYTE | I5 | |
LOGICAL(1) | L2 | |
LOGICAL(2) | L2 | |
LOGICAL(4) | L2 | |
LOGICAL(8) | L2 | |
INTEGER(1) | I5 | |
INTEGER(2) | I7 | |
INTEGER(4) | I12 | |
INTEGER(8) | I22 | |
REAL(4) | 1PG15.7E2 | |
REAL(8) T 浮動小数点 | 1PG24.15E3 | |
REAL(8) D 浮動小数点 | 1PG24.16E2 | |
REAL(8) G 浮動小数点 | 1PG24.15E3 | |
REAL(16) 1 | 1PG43.33E4 | |
COMPLEX(4) | '(',1PG14.7E2,',',1PG14.7E2,')' | |
COMPLEX(8) T 浮動小数点 | '(',1PG23.15E3,',',1PG23.15E3,')' | |
COMPLEX(8) D 浮動小数点 | '(',1PG23.16E2,',',1PG23.16E2,')' | |
COMPLEX(8) G 浮動小数点 | '(',1PG23.15E3,',',1PG23.15E3,')' | |
COMPLEX(16) 1 | '(',1PG42.33E4,',',1PG42.33E4,')' | |
CHARACTER | Aw 2 | |
1 VMS と U*X。
2 w は文字式の長さです。 |
基本設定では,文字定数はアポストロフィまたは引用符によって区切られず,個々の内部のアポストロフィまたは引用符は,外部でも 1 つのアポストロフィまたは引用符によって表現されます。
この動作は,(OPEN 文中の) DELIM 指定子によって次のように変更することができます。
ファイルが DELIM='QUOTE' 指定子を付けて開かれた場合,文字定数は引用符によって区切られ,内部の引用符は外部では 2 つの連続した引用符によって表現されます。
ファイルが DELIM='APOSTROPHE' 指定子を付けて開かれた場合,文字定数はアポストロフィによって区切られ,内部のアポストロフィは外部では 2 つの連続したアポストロフィによって表現されます。
個々の出力文は 1 つまたは複数の完全な記録を書き込みます。
文字定数表現または複素数定数は記録全体より長くてもかまいません。複素数定数の場合,虚部と右括弧が現在の記録に収まらなければ,コンマと虚部間で記録終了が起こることがあります。
個々の出力記録は,前の記録から継続された文字定数表現の場合を除いて,改行制御のための空白文字で始まります。
斜線,8 進値,ヌル値,および値の繰り返し書式は出力されません。
ファイルが書式なし I/O のために接続されている場合,並びデータ転送は禁止されます。
例
以下の文が指定されているとします。
DIMENSION A(4) DATA A/4*3.4/ WRITE (1,*) 'ARRAY VALUES FOLLOW' WRITE (1,*) A,4
この場合,外部装置 1 に以下の記録が書き込まれます。
ARRAY VALUES FOLLOW 3.400000 3.400000 3.400000 3.400000 4
以下に他の例を示します。
INTEGER i, j REAL a, b LOGICAL on, off CHARACTER(20) c DATA i /123456/, j /500/, a /28.22/, b /.0015555/ DATA on /.TRUE./, off/.FALSE./ DATA c /'Here''s a string'/ WRITE (*, *) i, j WRITE (*, *) a, b, on, off WRITE (*, *) c END
この例は,以下の出力を生成します。
123456 500 28.22000 1.555500E-03 T F Here's a string
関連情報
並び入力については,「並び順番 READ 文の規則」を参照してください。
書式付き順番 WRITE 文の一般的な規則については,「書式付き順番 WRITE 文の規則」を参照してください。