I/O functions


あるASCIIファイルから中身を読む:

res = read(filename)

結果は2つの行を含む文字列。 1行目はファイル状態で2行目がファイルの中身。 中身は最大で80文字。 行を分離するには「sublin」関数を用いる。

「read」のファイル状態:

0ok
1open error
2end of file
8file open for write
9I/O error

あるASCII出力ファイルに書き込む:

res = write(filename,record<,append>)

出力はファイル名「filename」のファイルに書き込まれる。 コマンドの最初の段階で、そのファイルが書き込みモードで開かれる。 つまりこれは既存の「filename」という名のファイルを破壊する! もし、オプションの追加フラグを使えば、そのファイルは追加書き込みモードで 開かれ、全ての書き込みはそのファイルの最後に追加される。

「write」のファイル状態:

0ok
1open error
8file open for read

開いたファイルを閉じる:

res = close(filename)

「close」コマンドはその名前のASCIIファイルを閉じ、そのファイルの頭だし をするのにも使える。

「close」のファイル状態:

0ok
1file not open

例:
'q file 1'
ret = result
res = write('file_1.txt',ret)
status = sublin(res,1)
if(status != 0)
   say 'write error #'status
   'quit'
endif

res = close('file_1.txt)
status = sublin(res,1)
if(status != 0)
   say 'close error #'status
   'quit'
endif