はじめに
日本語プログラミング言語Mindの小技「一行書き込み」について説明したいと思います。
対象読者
日本語プログラミング言語Mindのユーザー、または日本語プログラミング言語に興味のある方
この小技に関連するMind言語マニュアル
この小技に関連するMind言語仕様の記述はMind8プログラミングマニュアルに記載があります。
9 ファイル操作
└ファイルへの書き込み
書き込みに関しても、読み出しと同様に幾種類もの方法があるが、よく使用されるものを以下に解説する。
※引用者注 「一行書き込み」以外の単語は割愛
書き込み系の単語はいずれもエラー発生を伴う。1例としては、ディスクが一杯というものがある。エラーが発生すると、それ以後のすべての書き込みは無視されるようになる。また、そのファイルのクローズは必ずエラー状態で終わる(たとえ、クローズそのものは成功であったとしても)。「クローズを呼び出した際のエラー発生」の解説も合わせて参照されたい。
構文= <文字列>を <論理ファイル>に 一行書き込み → ・
注:論理ファイル名の送り仮名は必須。「に」のほかに「へ」も可
注:本単語から戻ったらエラー検査をおこなうこと「一行書き込み」は、指定する文字列(文字列情報で渡す)を指定するファイルに書き込み、さらに行末コードとしてCR(0DH)、LF(0AH)の2文字を(Linux版MindではLFの1文字を)書き込む。
本機能(本記事)は、下記のバージョンに対応しています。Mind8のLinux版も対応していると思いますが、本記事では特に検証を行っておりません。
対応バージョン
■Mind7 ■Mind8 ■Mind9
■Windows版 □Linux版
小技の解説
Mindの小技「一行書き込み」は、Mindのシーケンシャルファイルのラインライト機能です。Windows版の場合は改行コードで終端された行データを1行づつ書き込みます。
Mindプログラムソース
サンプル物理ファイルパスは 文字列定数 "c:\developments\vscode\mind9\sample.txt"。
サンプル物理新規ファイルパスは 文字列定数 "c:\developments\vscode\mind9\samplenew.txt"。
サンプルファイルは ファイル。
サンプル新規ファイルは ファイル。
メインとは (・ → ・)
サンプル新規ファイルを サンプル物理新規ファイルパスで 新規オープンし
エラー?
ならば 「サンプルファイルの新規オープンに失敗しました。(」を 表示し
エラー文字列を 表示し 「)」を 一行表示し
実行終わり
つぎに
「サンプルファイルを新規オープンしました。」を 一行表示し
サンプルファイルを サンプル物理ファイルパスで オープンし
エラー?
ならば 「サンプルファイルのオープンに失敗しました。(」を 表示し
エラー文字列を 表示し 「)」を 一行表示し
サンプル新規ファイルを クローズし
「サンプル新規ファイルをクローズしました。」を 一行表示し
実行終わり
つぎに
「サンプルファイルをオープンしました。」を 一行表示し
ここから
データ終り?
ならば 打ち切り
つぎに
サンプルファイルから 一行読み出しし
サンプル新規ファイルへ 一行書き込みし
エラー?
ならば 「サンプル新規ファイルへの一行書き込みに失敗しました。(」を 表示し
エラー文字列を 表示し 「)」を 一行表示し
打ち切り
つぎに
繰り返し
サンプルファイルを クローズし
「サンプルファイルをクローズしました。」を 一行表示し
サンプル新規ファイルを クローズし
エラー?
ならば 「サンプル新規ファイルへのクローズに失敗しました。(」を 表示し
エラー文字列を 表示し 「)」を 一行表示し
さもなければ
「サンプル新規ファイルをクローズしました。」を 一行表示し
つぎに。
# コンパイル結果
ではコンパイルしてみます。下位ライブラリはfileを指定します。
## Mind9
下図はMind9βです。
```cmd:
C:\developments\vscode\mind9>mind linewrite file
日本語プログラミング言語 Mind Version 8.11 for Windows
Copyright(C) 1985 Scripts Lab. Inc.
コンパイル中 .. 終了
Coping.. C:\mind9-beta\mind9-beta\bin\mindex.exe --> linewrite.exe
Mind8
C:\developments\vscode\mind9>mind linewrite file
日本語プログラミング言語 Mind Version 8.07 for Windows
Copyright(C) 1985 Scripts Lab. Inc.
コンパイル中 .. 終了
Coping.. c:\pmind\bin\mindex.exe --> linewrite.exe
Mind7
C:\developments\vscode\mind9>mind linewrite 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 -> linewrite.exe
実行結果
つづいて実行してみます。
読み込み元のsample.txtは下記の内容です。
C:\developments\vscode\mind9>type sample.txt
サンプルテキストファイルの1行目です。
サンプルテキストファイルの2行目です。
サンプルテキストファイルの3行目です。
サンプルテキストファイルの4行目です。
サンプルテキストファイルの5行目です。
C:\developments\vscode\mind9>
samplenew.txtは存在しない状態から実行します。
c:\developments\vscode\mind9>type samplenew.txt
指定されたファイルが見つかりません。
c:\developments\vscode\mind9>
Mind7/8/9β
Mind8の結果です。記述は割愛していますがMind7/9βも同じです。
C:\developments\vscode\mind9>linewrite
サンプルファイルを新規オープンしました。
サンプルファイルをオープンしました。
サンプルファイルをクローズしました。
サンプル新規ファイルをクローズしました。
C:\developments\vscode\mind9>
samplenew.txtにsample.txtの内容が転記されました。
c:\developments\vscode\mind9>type samplenew.txt
サンプルテキストファイルの1行目です。
サンプルテキストファイルの2行目です。
サンプルテキストファイルの3行目です。
サンプルテキストファイルの4行目です。
サンプルテキストファイルの5行目です。
c:\developments\vscode\mind9>
いかがでしょうか?イメージがつかめれば幸いです。
参考情報
この小技「一行書き込み」を使った記述例の記事は下記の「ファイルの新規オープン」で、新規オープンした後1行だけ書き込むのに使用しています。
ファイルの新規オープンをする際の注意事項はこちらをご参照ください。
おわりに
いかがでしたでしょうか?なにかの参考になれば幸いです。2025年は日本語プログラミング言語Mind生誕40周年です。
本記事シリーズのご紹介
本記事シリーズ「日本語プログラミング言語Mindの小技」は「日本語プログラミング言語Mind生誕40周年プロジェクト」の一環です。
興味を持たれた方は日本語プログラミング言語Mind公式サイトにアクセスすると、Mindコンパイラをダウンロードできます。
面白い!、楽しい、カンタン、難しいのも書ける!みんなでやってみよう![]()