装置とは、外部ファイルを参照する手段です。 プログラムは、入出力ステートメント内の装置指定子として指定した 装置番号によって、外部ファイルを参照します。 装置指定子の形式については、[UNIT=] を 参照してください。
接続とは、外部ファイルと装置間の関連を示します。 接続が行われてからでなければ、ファイルのレコードを読み取ることも、書き込むこともできません。
ファイルと装置を接続するには、次の 3 つの方法があります。
事前接続は、プログラムが実行を開始するときに行われます。 事前に OPEN ステートメントを実行しなくても、I/O ステートメントに 事前接続を指定することができます。
+----------------------------------IBM 拡張----------------------------------+
定様式順次アクセスを使用すると、常に、 無名ファイルとして装置 0、5、および 6 を以下のでデバイスに事前接続します。
ファイルは、以下の例外を除いて、OPEN ステートメントの デフォルトの指定子を保持します。
+------------------------------End of IBM 拡張-------------------------------+
+----------------------------------IBM 拡張----------------------------------+
順次 ステートメント (ENDFILE、PRINT、READ、REWIND、 または WRITE) が、外部ファイルに まだ接続されていない装置に対して実行されると、暗黙接続が行われます。 実行されるステートメントが、その装置を事前に決められた名前を持つファイルに接続します。 デフォルトで、この接続は、装置 n からファイル fort.n になります。 暗黙接続の前にファイルを作成する必要はありません。 別のファイル名に暗黙接続するには、「XL Fortran ユーザーズ・ガイド」の 『実行時オプションの設定』にある UNIT_VARS 実行時オプションを 参照してください。
暗黙接続では装置 0 を指定できません。
事前接続装置は、その装置と外部ファイルとの間の接続を終了した場合にのみ 暗黙的に接続できます。 次の例では、事前接続済み装置は、暗黙接続が行われる前にクローズされます。
Sample Implicit Connection PROGRAM TRYME WRITE ( 6, 10 ) "Hello1" ! "Hello1" written to standard output CLOSE ( 6 ) WRITE ( 6, 10 ) "Hello2" ! "Hello2" written to fort.6 10 FORMAT (A) END
暗黙接続の装置は、FORM= 指定子 および ASYNCH= 指定子を 除き、OPEN ステートメントのデフォルトの指定子値を使用します。 最初のデータ転送ステートメントが FORM= および ASYNCH= の値を決めます。
最初の I/O ステートメントが形式指示、リスト指示、 または名前リスト形式設定を 使用する場合、FORM= 指定子の値は FORMATTED に設定されます。 不定様式 I/O ステートメントは、指定子を UNFORMATTED に設定します。
最初の I/O ステートメントが非同期である場合、ASYNCH= 指定子の値は YES に設定されます。 同期 I/O ステートメントは、指定子を NO に設定します。
+------------------------------End of IBM 拡張-------------------------------+
CLOSE ステートメントは、 装置からファイルを切り離します。 このファイルは、同一のプログラム内で、同じ装置に再接続 することも、別の装置に再接続することも可能です。 この装置は、同一のプログラム内で、同じファイルに再接続 することも、別のファイルに再接続することも可能です。
+----------------------------------IBM 拡張----------------------------------+
+------------------------------End of IBM 拡張-------------------------------+