C# 命令行参数数组

C# 命令行参数数组,c#,command-line,C#,Command Line,我有一个这样的命令行参数,我需要得到两个这样的参数,怎么可能呢 ApplicationId=1;Name=2 我喜欢在单个数组中获得两个值1,2。如何做到这一点。和中提到了一些很好的库。我个人使用了所提到的WPF TestAPI库,它确实非常好试试看 string values = "ApplicationId =1; Name =2"; string[] pairs = values.Split(';'); string value1 = pairs[0].Split('=')[1]; st

我有一个这样的命令行参数,我需要得到两个这样的参数,怎么可能呢

ApplicationId=1;Name=2


我喜欢在单个数组中获得两个值1,2。如何做到这一点。

和中提到了一些很好的库。我个人使用了所提到的WPF TestAPI库,它确实非常好

试试看

string values = "ApplicationId =1; Name =2";
string[] pairs = values.Split(';');

string value1 = pairs[0].Split('=')[1];
string value2 = pairs[1].Split('=')[1];

当然,您需要更好的错误检查,但是value1和value2应该分别为“1”和“2”

我并不完全清楚,但我将假设参数实际上是:

 ApplicationId=1 Name=2
由于系统如何分割参数,因此间距etc很重要。在
Main(string[]args)
方法中,数组长度为2。您可以将其处理到字典中,例如:

    static void Main(string[] args) {
        Dictionary<string, string> options = new Dictionary<string, string>();
        foreach (string arg in args)
        {
            string[] pieces = arg.Split('=');
            options[pieces[0]] = pieces.Length > 1 ? pieces[1] : "";
        }

        Console.WriteLine(options["Name"]); // access by key

        // get just the values
        string[] vals = new string[options.Count];
        options.Values.CopyTo(vals, 0);
    }
static void Main(字符串[]args){
字典选项=新建字典();
foreach(args中的字符串arg)
{
字符串[]个数=参数拆分('=');
选项[件[0]]=件。长度>1?件[1]:“”;
}
Console.WriteLine(选项[“名称]);//按键访问
//仅获取值
string[]vals=新字符串[options.Count];
选项.Values.CopyTo(VAL,0);
}

您可能可以通过澄清问题来帮助我们。。。现在还不是100%清楚args是什么样子,或者您想要做什么,这就是我为需要命名参数的实用程序所做的。