只需设置一个DateTime
您想要开始的日期,然后继续添加14天:
所以要在4月13日之后每隔一个星期五到达年底:
DateTime dt = new DateTime(2012, 04, 13);
while (dt.Year == 2012)
{
Console.WriteLine(dt.ToString());
dt = dt.AddDays(14);
}
Run Code Online (Sandbox Code Playgroud)
评论后的更多信息:
如果您想要自2012/04/13以来的最近一个备用星期五,您可以计算从现在到2012/04/13之间的天数,将剩余的天数除以14,并从今天的日期减去那么多天:
DateTime baseDate = new DateTime(2012, 04, 13);
DateTime today = DateTime.Today;
int days = (int)(today - baseDate).TotalDays;
int rem = days % 14;
DateTime mostRecentAlternateFriday = today.AddDays(-rem);
Run Code Online (Sandbox Code Playgroud)