您的位置:首页 > 其它

根据当前时间确定日期范围(本周、本月、本季度、本年度)

2013-03-28 20:33 316 查看
 有时候需要根据当前时间,确定其它的都没有什么难度,只是本季度稍稍麻烦些。因为一年有四个季度,可以根据当前月份,得到本季度第一个月的月份,然后这个月的第一天,就是本季度的第一天了
DateTime dt = DateTime.Now; //当前时间

int dayOfWeek = Convert.ToInt32(dt.DayOfWeek.ToString("d"));
DateTime startWeek = dt.AddDays(1-((dayOfWeek == 0)?7:dayOfWeek)); //本周周一

DateTime endWeek = startWeek.AddDays(6); //本周周日
DateTime startMonth = dt.AddDays(1 - dt.Day); //本月月初

DateTime endMonth = startMonth.AddMonths(1).AddDays(-1); //本月月末

//DateTime endMonth = startMonth.AddDays((dt.AddMonths(1) - dt).Days - 1); //本月月末
DateTime startQuarter = dt.AddMonths(0 - (dt.Month - 1) % 3).AddDays(1 - dt.Day); //本季度初

DateTime endQuarter = startQuarter.AddMonths(3).AddDays(-1); //本季度末
DateTime startYear = new DateTime(dt.Year, 1, 1); //本年年初

DateTime endYear = new DateTime(dt.Year, 12, 31); //本年年末
至于昨天、明天、上周、上月、上季度、上年度等等,只要AddDays()、AddMonths()、AddYears()这几种方法组合一下就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐