日期的操作一直讓我比較暈~~~~ 有需求需要這個功能 找SDK裡面沒有這方面的方法 於是有如下寫法
planDate = Convert.ToDateTime(createDate.Year.ToString("yyyy") + "-" + month.ToString("MM") + "-" + day.ToString("dd"));
過了一會兒頓悟了,出現了下面的寫法
/// <summary>
/// 設置日期為指定的月和日
/// </summary>
/// <param name="dt">日期</param>
/// <param name="month">月</param>
/// <param name="day">日</param>
/// <returns>設置完成的日期</returns>
private DateTime setMonthAndDay(this DateTime dt, int month, int day)
{
dt.AddMonths(month - dt.Month);
int maxDay = DateTime.DaysInMonth(dt.Year, dt.Month);
if (maxDay < day)
{
dt.AddDays(maxDay - dt.Day);
}
else
{
dt.AddDays(day - dt.Day);
}
return dt;
}
摘自 AhJesus