ホームページ >バックエンド開発 >C++ >C#でコマンドライン引数を効率的に解析する方法は?

C#でコマンドライン引数を効率的に解析する方法は?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-31 15:16:08648ブラウズ

How to Efficiently Parse Command-Line Arguments in C#?

コマンドラインのラインパラメーターの効率的な分析方法

コマンドラインパラメーターを受け入れるコンソールアプリケーションを開発する場合、

に渡されたパラメーターを効果的に使用することが重要です。多くの開発者は、最初にインデックスと循環技術処理パラメーターを使用しました。ただし、コマンド構造がますます複雑になると、この方法によりコードが厄介になります。

この課題に対処するために、効果的なライブラリとモデルを探索することは非常に重要です。 Main(string[] args)ライブラリ:

ndesk.ouptions:便利で強力なパラメーター分析のための包括的なオプションのセットを提供します。そのスムーズなAPIは、分析ルールの定義を簡素化し、ヘルプ情報を表示するためのオプションを提供します。

mono.options:
    ndesk.optionsと同じAPIがあり、モノベースの環境に互換性のあるオプションを提供します。
  • ndesk.optionsを使用します
  • 次のコードフラグメントは、ndesk.optionsを使用してコマンドラインパラメーターを解析する方法を示しています。
  • このコードは、4つのオプションを定義します :文字列パラメーターを受け入れ、名前リストに追加します。
:整数パラメーターを受け入れ、繰り返し変数に割り当てます。

:指定されている場合、冗長変数が増加します(値なし)。

:支援情報を表示し、アプリケーションを終了します。

<code class="language-csharp">bool show_help = false;
List<string> names = new List<string>();
int repeat = 1;

var p = new OptionSet()
{
    { "n|name=", "问候对象的姓名。", v => names.Add(v) },
    { "r|repeat=", "重复问候的次数(必须为整数)。", (int v) => repeat = v },
    { "v", "提高调试消息的详细程度", v => { if (v != null) ++verbosity; } },
    { "h|help", "显示此消息并退出", v => show_help = v != null }
};

List<string> extra;
try
{
    extra = p.Parse(args);
}
catch (OptionException e)
{
    Console.Write("greet: ");
    Console.WriteLine(e.Message);
    Console.WriteLine("尝试 `greet --help` 获取更多信息。");
    return;
}</code>
柔軟で優れたパラメーター分析方法を提供することにより、これらのライブラリはコードのメンテナンスと読みやすさを大幅に向上させることができます。

以上がC#でコマンドライン引数を効率的に解析する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。