TeraTerm マクロで、別なファイルを読み込む方法

ログを見てたら、マクロでファイルを読み込む方法を検索してる人がいた。
テキストファイルでいいんなら、これは割と簡単。
ヘルプを見ると、そのまんま fileopen / fileclose というコマンドがある。


fileopen
※ やっぱり詳細は TeraTerm のヘルプを見るべし。


で、おもむろにサンプルを作る。



; ファイル名を適当に変数へセット。
; 別にセットしなくても良い。
FILE = "c:\tekito-na.txt"


; FILE を fhandle というハンドルで、開く。
; fhandle は、任意の名前で良い。
fileopen fhandle FILE 0


; ラベルを指定してみる。
:LOOP

; 開いたファイルから一行読み込んで linestring という変数に入力。
; この linestring という変数も、任意の名前で良い。
filereadln fhandle linestring


; linstring という変数の中身を、適切に処理する…

; filereadln は、一度実行したら次の行へアクセスできるので、ラベルを指定して戻る。
goto LOOP

; 開いたファイルは、最後に閉じる。
fileclose fhandle



今回は読み込んだけど、filereadln を filewriteln に変えるとガツガツ書き込んでいく。
また、ループする方法は while でもイケる。


この、ファイルハンドルっていうやつ、理解するのに手間取るよね。
慣れてくると「あ、フルパスを入れておく専用の変数か」みたいな扱いで済ませちゃうけど…


TeraTerm マクロ内での、ファイルの扱い方ってプログラム言語に忠実だって感じる。