JScript.NET で引数を取得し、引数チェックする方法

JScript.NET で引数を取得・チェックする方法を紹介する。

// 引数を取得する。結果は配列で受け取れる。
var args = Environment.GetCommandLineArgs();

// args[0] は exe ファイル自身のパス文字列になるので、配列の要素数が 1 では引数なしとみなせる
if(args.length === 1) {
  // No arguments...
}

// 引数1を取得しに、拡張子「.md」を含むファイル名が記述されているかチェックする
var fileName = args[1];
if(System.IO.Path.GetExtension(fileName) != ".md") {
  // エラー:第1引数には拡張子「.md」のファイル名を指定してください!
}
else {
  // 引数のファイル名が正しかったらファイルの存在チェックをするとか…
}

この JScript.NET を呼ぶには、コマンドプロンプトなどで以下のように使う。

Rem 上のスクリプトを「showFile.exe」としてコンパイルしてあるディレクトリにいるテイ
> showFile.exe test.md

こうすれば引数が渡せる。

C# や VB.NET の経験がないまま、いきなり JScript.NET を触ろうとすると、.NET Framework の API が分からず苦労する…。