繁体   English   中英

C#如何检查当前字符串的日期是否为今天?

[英]C# How would I check if a date that is currently a string is today?

我有一个名为'String(Generalized-Time)'的格式的日期,请参阅此处链接的MSDN ,我需要检查此日期是否为今天以及是否为X.

为了使这个稍微复杂一点,我有一个int,在这个例子4中,如果int是4,那么我想检查'String(Generalized-Time)'格式的日期是否在过去的4天内,int也许是7,24,30等

我怎么写这个? 我是新手,非常感谢你的帮助。

谢谢

像这样:

   DateTime dt;
   if (DateTime.TryParse(stringValue, out dt) && 
       dt.Date == DateTime.Today)
   {
       // do some stuff
   }

要检查它是否在过去四天内的任何时间,

   DateTime dt;
   if (DateTime.TryParse(stringValue, out dt) && 
       dt.Date > DateTime.Today.AddDays(-4f) &&
       dt < DateTime.Now)
   {
       // do some stuff
   }

或者,作为一种扩展方法

public static bool WithinPreviousPeriod(this DateTime dt, int daysBack)
{
     return dt.Date > DateTime.Today.AddDays(-daysBack))
             && dt < DateTime.Now;
}
if(DateTime.Parse(yourString).Date == DateTime.Now.Date )
{
  //do something
}

应该看看今天是否是今天。 但是这缺少错误检查(它假定yourString是一个有效的日期时间字符串)。

要执行更复杂的检查,您可以执行以下操作:

DateTime date = DateTime.Parse(yourString);
int dateOffset = 4;

if(date.Date >= DateTime.Now.AddDays(-dateOffset).Date)
{
//this date is within the range!
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM