Maison >développement back-end >C++ >Comment analyser efficacement les arguments en ligne de commande dans C #?

Comment analyser efficacement les arguments en ligne de commande dans C #?

Barbara Streisand
Barbara Streisandoriginal
2025-01-31 15:16:08698parcourir

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

La méthode d'analyse efficace des paramètres de ligne de la ligne de commande

Lors du développement d'une application de console qui accepte les paramètres de ligne de commande, il est important d'utiliser efficacement les paramètres transmis à

. De nombreux développeurs ont initialement utilisé des index et circulant les paramètres de traitement technique. Cependant, à mesure que la structure de commande devient de plus en plus compliquée, cette méthode rendra gênant le code.

Main(string[] args) Afin de faire face à ce défi, explorer des bibliothèques et des modèles efficaces est très important:

Bibliothèque:

ndesk.ouptions:

fournit un ensemble d'options complètes pour l'analyse des paramètres pratique et puissante. Son API lisse simplifie la définition des règles d'analyse et fournit des options pour afficher les informations d'aide.
  • mono.options: a la même API que ndesk.options, offrant des options compatibles pour les environnements mono.
  • ndesk.options Utilisez l'exemple:
  • Les fragments de code suivants montrent comment utiliser ndesk.options pour analyser les paramètres de ligne de commande:

Ce code définit quatre options:

: Acceptez les paramètres de chaîne et ajoutez-le à la liste des noms.

<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>
: Acceptez le paramètre entier et affectez-le à la variable de répétition.

: Si spécifié, la variable de verbosité est augmentée (aucune valeur).
  1. : Afficher les informations d'aide et quitter l'application. "n|name="
  2. En fournissant une méthode d'analyse des paramètres flexible et bonne, ces bibliothèques peuvent améliorer considérablement la maintenance et la lisibilité du code. "r|repeat="

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn