Windows - バッチ - 配列

 クラウディア
1. 概要
2. ファイル内の文字列を配列に設定

1. 概要

 本項は「バッチファイルで配列を使う(リンクをはっていましたが、リンク切れになりました)」を参考にさせていただきました。  参考サイトによれば、正式には配列でなく「配列もどき」だそうですが、変数を配列のような扱いで使用することができます。

2. ファイル内の文字列を配列に設定


あいうえお
カキクケ
さしす
タチ
 と書いてあるテキストファイル(sample.txt)があるとして、読みこんで配列に設定して表示します。

@ECHO OFF

SETLOCAL ENABLEDELAYEDEXPANSION

SET N=0

FOR /F %%S IN (sample.TXT) DO (
  SET STRING[!N!]=%%S
  SET /A N=N+1
)

ECHO %STRING[0]%
ECHO %STRING[1]%
ECHO %STRING[2]%
ECHO %STRING[3]%

ENDLOCAL
 これを実行すると

あいうえお
カキクケ
さしす
タチ

 という結果が得られます。  最後にひとつ改行が出力されていますが、ここの本題とは関係ないのでほっておきます。  参考サイトで言っている「配列もどき」という意味がわかりました。  「STRING[0]」というのは、全体で1つの変数であるということです。  「[0]」は配列の添え字ではありません。