项目中用到了,所以就写全了,供参考使用。
DateTime dt=DateTime.Now;
int weeknow = Convert.ToInt32(DateTime.Now.DayOfWeek);
int dayspan = (-1) * weeknow + 1;
DateTime dt2=dt.AddMonths(1);
//获取本周第一天
this.Label1.Text = DateTime.Now.AddDays(dayspan).ToString("yyyy-MM-dd");
//本月第一天
this.Label1.Text = dt.AddDays(-(dt.Day) + 1).ToString("yyyy-MM-dd");
//本月最后一天
this.Label1.Text = dt2.AddDays(-dt.Day).ToString("yyyy-MM-dd");
//上个月第一天
this.Label1.Text = dt.AddMonths(-1).AddDays(-dt.Day+1).ToString("yyyy-MM-dd");
//上个月最后一天
this.Label1.Text = dt.AddDays(-dt.Day).ToString("yyyy-MM-dd");
//上一年第一天
this.Label1.Text = dt.AddYears(-1).AddMonths(-dt.Month+1).AddDays(-dt.Day+1).ToString("yyyy-MM-dd");
//上一年最后一天
this.Label1.Text = dt.AddMonths(-dt.Month + 1).AddDays(-dt.Day).ToString("yyyy-MM-dd");
//本年第一天
this.Label1.Text = dt.AddMonths(-dt.Month + 1).AddDays(-dt.Day+1).ToString("yyyy-MM-dd");
//上周第一天
this.Label1.Text = DateTime.Now.AddDays(daydiff-7).ToString("yyyy-MM-dd");
//上周最后一天
this.Label1.Text = DateTime.Now.AddDays(daydiff - 1).ToString("yyyy-MM-dd");