前回のおさらい
前回は、グラフィック画面操作のプログラムをFor文やGOSUB命令を交えたプログラムで書いてみました。
レトロPCのためのBASIC講座9
BASICのファイル読書
BASICでは、シーケンシャルファイルとランダムアクセスファイルがあります。
シーケンシャルファイルは、1行ごと書込みます。
1行の長さが決まっていないので、1レコードの読書はできません。
シーケンシャルファイルの書込み
N88BASICのディスクBASICでデータを読み書きする際の1つの手法が、シーケンシャルファイルの読書です。
以下は、シーケンシャルファイル(テキストファイル)の書込みmです。
WTTEXT.BAS
100 ' Datas
110 DATA "Test1",10,11,"Test2",19,29
120 '
130 '
140 '
150 OPEN "Test.txt" FOR OUTPUT AS #1
160 FOR I=1 TO 2
170 READ S$,I1,I2
180 WRITE #1 ,S$,I1,I2
190 NEXT
200 CLOSE #1
上記プログラムは110行目にあるデータを読みディスク上のTest.txtというファイルに書き込みます。
150行目でファイルを書込み用に開いて、180行目のWRITE文で書込み、200行目でファイルを閉じています。
170行目のREADは110行目のデータを読んでいます。
シーケンシャルファイルを読む
RDTEXT.BAS
100
110 OPEN "Test.txt" FOR INPUT AS #1
120 FOR I=1 TO 2
130 INPUT #1,S$,I1,I2
140 WRITE S$,I1,I2
150 NEXT I
160 CLOSE #1
上記の例ではTest.txtに書込まれたデータを読取ります。
110行目で読込用にファイルを開いて、130行目でファイルから読み取り、160行目でファイルをクローズ
読書時に使っている♯1はファイルディスクリプターと呼ばれる番号
今回の動画