はじめに
日本語プログラミング言語Mindの小技「一行読み出し」について説明したいと思います。
対象読者
日本語プログラミング言語Mindのユーザー、または日本語プログラミング言語に興味のある方
この小技に関連するMind言語マニュアル
この小技に関連するMind言語仕様の記述はMind8プログラミングマニュアルに記載があります。
9 ファイル操作
└ファイルの読み出し
└一行読み出し
構文=<論理ファイル>から 一行読み出し → <文字列>
↑
論理ファイル名の送り仮名は必須で、「から」のほか、「より」、「を」も可論理ファイルから1行分の文字列を読み出す。次のようになっている。
・読み出した文字列は、ライブラリ内の文字列実体変数「読み出し文字列」に
格納され、そこを指す文字列情報がスタックに得られる
・行末の判定は、LF(0AH)により行なわれるいる(Windows環境ではCR+LF
の2文字が使われるが、CRは有っても無くても良い)
・行末にある制御文字の、CR(0DH)、LF(0AH)は捨てられ、読み出しデータ
に含めない
・行先頭/末尾にある制御文字の、00H、1AHの2種類の文字コードはトリミ
ングされる(含めない)
構文= データ終り? → <真/偽>
ファイルからの読み出しで必ず使う処理単語である。
最後のデータを読み出したあと、なおもデータを読み出した場合に真が返される。真が返された場合には、直前の読み出しは無効なので、データを使用してはならない。
本機能(本記事)は、下記のバージョンに対応しています。Mind8のLinux版も対応していると思いますが、本記事では特に検証を行っておりません。
対応バージョン
■Mind7 ■Mind8 ■Mind9
■Windows版 □Linux版
小技の解説
Mindの小技「一行読み出し」は、Mindのシーケンシャルファイルのラインリード機能です。Windows版の場合は改行コードで終端された行データを1行づつ読み出します。
Mindプログラムソース
サンプル物理ファイルパスは 文字列定数 "c:\developments\vscode\mind9\sample.txt"。
サンプルファイルは ファイル。
メインとは (・ → ・)
サンプルファイルを サンプル物理ファイルパスで オープンし
エラー?
ならば 「サンプルファイルのオープンに失敗しました。(」を 表示し
エラー文字列を 表示し 「)」を 一行表示し
実行終わり
つぎに
「サンプルファイルをオープンしました。」を 一行表示し
ここから
データ終り?
ならば 打ち切り
つぎに
サンプルファイルから 一行読み出しし 一行表示し
繰り返し
サンプルファイルを クローズし
「サンプルファイルをクローズしました。」を 一行表示する。
コンパイル結果
ではコンパイルしてみます。下位ライブラリはfileを指定します。
Mind9
下図はMind9βです。
C:\developments\vscode\mind9>mind lineread file
日本語プログラミング言語 Mind Version 8.11 for Windows
Copyright(C) 1985 Scripts Lab. Inc.
コンパイル中 .. 終了
Coping.. C:\mind9-beta\mind9-beta\bin\mindex.exe --> lineread.exe
Mind8
C:\developments\vscode\mind9>mind lineread file
日本語プログラミング言語 Mind Version 8.07 for Windows
Copyright(C) 1985 Scripts Lab. Inc.
コンパイル中 .. 終了
Coping.. c:\pmind\bin\mindex.exe --> lineread.exe
Mind7
C:\developments\vscode\mind9>mind lineread file
日本語プログラミング言語 Mind Version 7.5 for Windows
Copyright(C) 1985-2004 Scripts Lab. Inc.
Single user license. Serial No:********
コンパイル中 - 終了
Coping.. C:\mind7\bin\mindexec.exe -> lineread.exe
実行結果
つづいて実行してみます。
sample.txtは下記の内容です。
C:\developments\vscode\mind9>type sample.txt
サンプルテキストファイルの1行目です。
サンプルテキストファイルの2行目です。
サンプルテキストファイルの3行目です。
サンプルテキストファイルの4行目です。
サンプルテキストファイルの5行目です。
C:\developments\vscode\mind9>
Mind7/8/9β
Mind8の結果です。記述は割愛していますがMind7/9βも同じです。
C:\developments\vscode\mind9>lineread
サンプルファイルをオープンしました。
サンプルテキストファイルの1行目です。
サンプルテキストファイルの2行目です。
サンプルテキストファイルの3行目です。
サンプルテキストファイルの4行目です。
サンプルテキストファイルの5行目です。
サンプルファイルをクローズしました。
C:\developments\vscode\mind9>
いかがでしょうか?イメージがつかめれば幸いです。
参考情報
この小技「一行読み出し」を使った記述例の記事は下記の「ファイルのオープンとクローズ」で、オープンした後1行だけ読み出すのに使用しています。
ファイルのオープンをする際の注意事項はこちらをご参照ください。
おわりに
いかがでしたでしょうか?なにかの参考になれば幸いです。2025年は日本語プログラミング言語Mind生誕40周年です。
本記事シリーズのご紹介
本記事シリーズ「日本語プログラミング言語Mindの小技」は「日本語プログラミング言語Mind生誕40周年プロジェクト」の一環です。
興味を持たれた方は日本語プログラミング言語Mind公式サイトにアクセスすると、Mindコンパイラをダウンロードできます。
面白い!、楽しい、カンタン、難しいのも書ける!みんなでやってみよう