Vielleicht gefällt Ihnen mein Rug.Cmd
Einfach zu verwendender und erweiterbarer Parser für Befehlszeilenargumente. Behandelt: Bool, Plus / Minus, String, String-Liste, CSV, Aufzählung.
Eingebauter '/?'-Hilfemodus.
Eingebauter '/??'- und '/?D'-Dokumentengenerator-Modus.
static void Main(string[] args)
{
// create the argument parser
ArgumentParser parser = new ArgumentParser("ArgumentExample", "Example of argument parsing");
// create the argument for a string
StringArgument StringArg = new StringArgument("String", "Example string argument", "This argument demonstrates string arguments");
// add the argument to the parser
parser.Add("/", "String", StringArg);
// parse arguemnts
parser.Parse(args);
// did the parser detect a /? argument
if (parser.HelpMode == false)
{
// was the string argument defined
if (StringArg.Defined == true)
{
// write its value
RC.WriteLine("String argument was defined");
RC.WriteLine(StringArg.Value);
}
}
}
Edit: Dies ist mein Projekt und als solches sollte diese Antwort nicht als Befürwortung einer dritten Partei angesehen werden. Dennoch verwende ich es für jedes kommandozeilenbasierte Programm, das ich schreibe. Es ist Open Source und ich hoffe, dass andere davon profitieren können.
0 Stimmen
Eine frühere Diskussion, split-string-enthalten-kommandozeilen-parameter-in-string-in-c# hat vielleicht einige Antworten.
1 Stimmen
Hallo, tut mir leid, es ist ein bisschen off-topic. aber ich benutze die "Anwendungseinstellungen", um Argumente an die Anwendung zu übergeben. Ich fand es ziemlich einfach zu bedienen und keine Notwendigkeit, Argument/Datei-Parsing zu schreiben, und keine Notwendigkeit für zusätzliche Bibliothek. msdn.microsoft.com/de-us/library/aa730869(VS.80).aspx
44 Stimmen
@call me Steve: Der Sinn von Kommandozeilenargumenten ist, dass sie bei jedem Aufruf variieren können - wie machen Sie das mit den Anwendungseinstellungen?