技術をかじる猫

適当に気になった技術や言語、思ったこと考えた事など。

コマンドラインをザクッと解析する

何で今さら?というと、、、、
要はツール作ろうと思ったけど、コマンドライン解析が面倒だったという話。

紹介するのはコレ

http://commandline.codeplex.com/

ほげっとクラス書いて

    class Options
    {
        [Option("i", "in")]
        public string inputDir;

        [Option("o", "out")]
        public string outputDir;

        [Option("b", "handbreak")]
        public string handbreak;

        [Option("a", "android")]
        public Boolean enableAndroid;
    }

これで読み込める。
解析楽だけど、、、、関数脳になり気味でC#書くと、冗長性に泣きそうになる。パターンマッチ書きたい。

Options option = new Options();
ICommandLineParser parser = new CommandLineParser();

if (parser.ParseArguments(args, option))
{
    if (option.outputDir == null) option.outputDir = option.inputDir;
    /* とかなんとか */
}