使用子字符串的日期/时间C#

时间:2016-02-16 02:36:08

标签: c# while-loop substring

这是我到目前为止的代码,它将运行一个.exe,这样当我进入我的生日时,它会告诉我我活了多少天。现在,我需要帮助使用子字符串,以便我可以编辑输入,如果一个人输入错误的数据,程序需要让他们一次又一次地输入它,直到它是正确的。我需要使用while循环。任何帮助表示赞赏。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CalcDays
{
    class Program
    {
        static void Main(string[] args)
        {


            Console.WriteLine("This program written by Greg Ever");
            Console.WriteLine("Input your birthdate in MM/DD/YYYY format");
            string userValue;
            DateTime myBirthday = DateTime.Parse("04/15/2000");
            TimeSpan myAge = DateTime.Now.Subtract(myBirthday);
            userValue = Console.ReadLine();
            Console.WriteLine(myAge.TotalDays);
            Console.ReadLine();
        }
    }
}

1 个答案:

答案 0 :(得分:0)

使用TryParseExact解析给定格式的Date

string userValue;       
DateTime myBirthday;

do
{
    Console.WriteLine("Input your birthdate in MM/DD/YYYY format");
    userValue = Console.ReadLine();;

}while (!DateTime.TryParseExact(userValue, "MM/dd/yyyy",System.Globalization.CultureInfo.InvariantCulture, DateTimeStyles.None, out myBirthday));

检查Demo