是否有一个命令行参数解析库支持解析类似java的系统参数(-Dproperty=value)

本文关键字:参数 系统 -Dproperty value 命令行 有一个 支持 是否 java | 更新日期: 2023-09-27 18:29:26

基本上,我想指定一些不同的参数,理想情况下填充一个Dictionary。大致如下:

 c:'> MyApp.exe -Dproperty1=value1 -Dproperty2=value2

会翻译成类似的东西:

 Dictionary<string,string>() { { "property1", "value1" }, { "property2", "value2" } } 

我研究了许多解决方案,但似乎都不支持这种类型的语法。在我创建自己的或修改别人的之前,我想我会问。

是否有一个命令行参数解析库支持解析类似java的系统参数(-Dproperty=value)

您需要编写自己的解析算法。无论如何,使用Linq并不难,例如:

args.Skip(1) // skip the program name
.Select(x => { 
                var parts = x.Split('='); 
                return new KeyValuePair<string,string>(
                            parts[0].Replace("-D",""),
                            parts[1]);
             }).ToDictionary(x => x.Key,x => x.Value);