【问题标题】:Getting a console application to allow input multiple times让控制台应用程序允许多次输入
【发布时间】:2014-02-02 19:18:52
【问题描述】:

我制作了一个控制台应用程序,用于计算自用户指定日期以来的天数。但是在最初的计算之后,如果输入另一个日期,应用程序就会关闭。

如果用户想继续使用我的应用程序,有没有办法让我不关闭它?

Console.WriteLine("Please enter the date you wish to specify: (DD/MM/YYYY)");
        string userInput;
        userInput = Console.ReadLine();
        DateTime calc = DateTime.Parse(userInput);
        TimeSpan days = DateTime.Now.Subtract(calc);
        Console.WriteLine(days.TotalDays);
        Console.ReadLine();

【问题讨论】:

  • 请发布您正在使用的代码,以便我们可以最好地告诉您如何修改它并解释您哪里出错了。
  • 抱歉,代码已经存在!

标签: c# console-application


【解决方案1】:

实现一个while循环:

Console.WriteLine("Please enter the date you wish to specify: (DD/MM/YYYY)");
string userInput;
userInput = Console.ReadLine();
while (userInput != "0")
{
    DateTime calc = DateTime.Parse(userInput);
    TimeSpan days = DateTime.Now.Subtract(calc);
    Console.WriteLine(days.TotalDays);
    Console.WriteLine("Add another date");
    userInput = Console.ReadLine();
}

按0回车会退出。

【讨论】:

    【解决方案2】:

    将您的代码放入一个循环中,让用户有办法退出应用程序。

    例如

    Console.WriteLine("Press q to quit");
    
    bool quitFlag = false;
    while (!quitFlag )
    {
        Console.WriteLine("Please enter the date you wish to specify: (DD/MM/YYYY)");
        string userInput;
        userInput = Console.ReadLine();
        if (userInput == "q")
        {
            quitFlag = true;
        }
        else
        {
            DateTime calc = DateTime.Parse(userInput);
            TimeSpan days = DateTime.Now.Subtract(calc);
            Console.WriteLine(days.TotalDays);
            Console.ReadLine();
        }
    }
    

    这将允许用户通过输入“q”退出应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-01-25
      • 1970-01-01
      • 1970-01-01
      • 2015-08-24
      • 2012-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多