C# 单个参数的多个值

C# Multiple values for single argument

我刚刚在学习 C#,我制作了一个接受命令行参数的控制台应用程序,但我需要一个接受多个值并将它们放入字符串数组的参数。

这是我目前的情况,如果不是很明显,参数 -colors 应该能够接受多个值并将它们放在自己的数组中。

for (int i = 0; i < args.Length; i++)
{
    switch (args[i])
    {
        case "-dob":
            birth = args[i + 1];
            birthDay = Convert.ToDateTime(birth);
            break;

        case "-name":
            name = args[i + 1];
            break;

        case "-colors":
    }
}

您可以用特定字符分隔值,然后按字符进行拆分。例如 red.black.white 然后

var array= args[i + 1].Split('.')

您可以将多个值作为颜色传递并在内部将它们添加到列表中

List<string> colors = new List<String>();
for (int i = 0; i < args.Length; i++)
{
    switch (args[i])
    {
        case "-color":
            colors.Add(args[i + 1]);
        break;

    }
}

您将把它用作

myProgram.exe -color red -color blue