检查用户输入的日期是否在IF语句中的两个日期之间?C#
用户已经输入了他们的生日,我试图找出这个日期(我称之为UserBD)是否在2个日期(Date1和Date2)之间 这样我就可以根据用户的生日来计算他们的星号 到目前为止,我已经试着做了以下几点,但显然是错误的,因为日子不是无限地向上跑,而是在月底重置:检查用户输入的日期是否在IF语句中的两个日期之间?C#,c#,datetime,C#,Datetime,用户已经输入了他们的生日,我试图找出这个日期(我称之为UserBD)是否在2个日期(Date1和Date2)之间 这样我就可以根据用户的生日来计算他们的星号 到目前为止,我已经试着做了以下几点,但显然是错误的,因为日子不是无限地向上跑,而是在月底重置: DateTime AquariusStart = new DateTime(1900, 01, 20); DateTime AquariusEnd = new DateTime(1900, 02, 18); if (userBD.Month &
DateTime AquariusStart = new DateTime(1900, 01, 20);
DateTime AquariusEnd = new DateTime(1900, 02, 18);
if (userBD.Month >= AquariusStart.Month &&
userBD.Month <= AquariusEnd.Month &&
userBD.Day >= AquariusStart.Day &&
userBD.Day <= AcquarisStart.Day)
{
Console.WriteLine("Your Star Sign is Aquarius!");
}
DateTime-AquariusStart=newdatetime(1900,01,20);
DateTime AquariusSend=新日期时间(1900、02、18);
如果(userBD.Month>=AquariusStart.Month&&
userBD.Month=AquariusStart.Day&&
userBD.Day您可以比较日期时间。因此您可以这样做:
var birthDay = new DateTime(1900, userBirthDay.Month, userBirthDay.Day);
if(aquariusStart <= birthDay && birthDay < aquariusEnd)
{
//Do something.
}
var birthDay=newdatetime(1900,userBirthDay.Month,userBirthDay.Day);
如果(宝瓶座开始这样做可以:
DateTime AquariusStart = new DateTime(DateTime.Now.Year, 01, 20);
DateTime AquariusEnd = new DateTime(DateTime.Now.Year, 02, 18);
DateTime UserBd = new DateTime(DateTime.Now.Year, 02, 19);
if (DateTime.Compare(AquariusStart, UserBd) < 0 &&
DateTime.Compare(AquariusEnd, UserBd) >= 0)
{
Console.WriteLine("Your Star Sign is Aquarius!");
}
DateTime-AquariusStart=newdatetime(DateTime.Now.Year,01,20);
DateTime AquariusSend=新的日期时间(DateTime.Now.Year,02,18);
DateTime UserBd=新的DateTime(DateTime.Now.Year,02,19);
如果(DateTime.Compare(AquariusStart,UserBd)<0&&
DateTime.Compare(宝瓶座发送,用户BD)>=0)
{
你的星座是水瓶座;
}
如果(userBD>=AquariusStart&&userBD当然,如果你能告诉我如何使日期时间的年份不与生日冲突,你能检查一下吗?(即如果userBD.Year是2000,则日期时间将在2000年内搜索或完全忽略年份).你只需将开始/结束日期与你的生日定在同一年,你就可以进行任何比较like@WebDev-当然,只要做DateTime-AquariusStart=new-DateTime(userBD.Year,01,20);
和DateTime-aquariussend=new-DateTime(userBD.Year,02,18);
。如何使DateTime的年份与用户的生日年份同步的可能重复项?将其编辑为使用同一年。您必须创建一个新的DateTime,因为DateTime是不可变的。我总是不喜欢使用DateTime.Now。如果开始设置为2016 23:59:59,并且用户BD设置为2017 00:00:00,则可能会失败。@Carra是的,您是是的……但这是一个非常边缘化的案例。无论如何,这只是为了显示opDateTime。比较:)