OPEN文

ファイルを経路に関連づける。

以下,経路番号は数値式,ファイル名は文字列式で指定する。
拡張子なしのファイル名を指定したとき,指定されたファイルが存在しなければ,ファイル名に ".TXT"を付け加えて処理する。

OPEN #経路番号 : NAME ファイル名 ,ACCESS OUTIN
OPEN #経路番号 : NAME ファイル名
     ,ACCESS OUTINは省略可能。
例 OPEN #1: NAME "A:ABC.TXT"
指定されたファイルがなければ新規に作成する。
ただし,ドライブ名やディレクトリ名が正しくない場合などは,EXTYPE=7101で実行時エラーになる。
OPEN文の実行直後,ファイルポインタはファイルの始まりを指す。
PRINT文を用いて出力する場合には,ERASE文を用いて消去してから書き出しを始めるか, SET POINTER END文を用いてファイルポインタをファイルの終りに移動してから書き出しを実行するかのいずれかが必要。

OPEN #経路番号 : NAME ファイル名 ,ACCESS INPUT
入力専用のファイルとして開く。
指定された名前のファイルが存在しないと例外状態になる(extype7102)。
ERASE文やPRINT文を実行すると例外状態になる(extype7301,7302)。

OPEN #経路番号 : NAME ファイル名 ,ACCESS OUTPUT
出力専用のファイルとして開く。
ファイルポインタはファイルの終りを指す。
指定された名前のファイルが存在しないと新規に作成する。
ERASE文やINPUT文を実行すると例外状態になる。(extype7301,7303)
SET POINTER BEGINを実行すると,以後のPRINT文で例外状態になる。
したがって,ACCESS OUTPUTを指定するのは,追加書き出しのためにファイルを開くときに限る。

◇ 経路番号はプログラム単位ごとに独立している。
経路を外部副プログラムの引数にすることができる。

DECLARE EXTERNAL SUB s1
OPEN #1:NAME "A:TEST1.TXT"
CALL s1(#1,"ABC")
CLOSE #1
END
EXTERNAL SUB s1(#2,s$)
PRINT #2:s$
END SUB

<補足> 経路番号0に対するOPEN文は不要。
<参照> COMポート(シリアルポート)