我尝试允许用户连续添加一个键和一个将空格分隔到字典的值,并允许用户通过退出时出现一个空白行已完成输入键和值已输入。
例如,这是有效的输入:
test-string 12345
hello world
我的代码工作正常但是如果用户只输入一行然后输入一个空行,那么它仍然显示输入了无效输入:
Console.WriteLine("Parameters separated by a space (NAME - VALUE). A blank line ends input.");
var parameters = new Dictionary<string, string>();
while (Console.ReadLine() != String.Empty)
{
string input = Console.ReadLine();
string[] splitInput = input.Split(' ');
if (splitInput.Count() < 2)
{
Console.WriteLine("Invalid input.");
}
else
{
parameters.Add(splitInput[0], splitInput[1]);
}
}
我不确定它出了什么问题,我认为这与< 2
有关,但我不知道如何检查其数量元素。如何在空白行退出时正确允许输入多个值?
答案 0 :(得分:0)
你在while循环中正在做一个Console.ReadLine()。然后在空格上分割任何空行,从而产生一个包含0个元素的字符串数组。然后立即将其视为“输入无效。”