C 根據當前時間獲取 本月 上月 本週

2021-09-09 07:12:55 字數 3596 閱讀 8187

datetime dt = datetime.now;  //當前時間

datetime startweek = dt.adddays(1 - convert.toint32(dt.dayofweek.tostring("d"))); //本週周一

datetime endweek = startweek.adddays(6); //本週週日

datetime startmonth = dt.adddays(1 - dt.day); //本月月初

datetime endmonth = startmonth.addmonths(1).adddays(-1); //本月月末//

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); //本年年末至於昨天、明天、上週、上月、上季度、上年度等等,

var 上週一 = datetime.now.adddays(convert.toint32(1 - convert.toint32(datetime.now.dayofweek)) - 7); //上週一

var 上周末 = datetime.now.adddays(convert.toint32(1 - convert.toint32(datetime.now.dayofweek)) - 7).adddays(6); //上周末(星期日)//下週

var 下周一 = datetime.now.adddays(convert.toint32(1 - convert.toint32(datetime.now.dayofweek)) + 7); //下周一

var 下週末 = datetime.now.adddays(convert.toint32(1 - convert.toint32(datetime.now.dayofweek)) + 7).adddays(6); //下週末

datetime.parse(datetime.now.year.tostring() + datetime.now.month.tostring() + "1").addmonths(1).adddays(-1).toshortdatestring();//最後一天

//巧用c#裡tostring的字元格式化更簡便

datetime.now.tostring("yyyy-mm-01");//本月初

datetime.parse(datetime.now.tostring("yyyy-mm-01")).addmonths(1).adddays(-1).toshortdatestring();//本月最後一天

datetime.parse(datetime.now.tostring("yyyy-mm-01")).addmonths(-1).toshortdatestring();//上個月1號

datetime.parse(datetime.now.tostring("yyyy-mm-01")).adddays(-1).toshortdatestring();//上個月最後一天

datetime.parse(datetime.now.tostring("yyyy-mm-01")).addmonths(1).toshortdatestring();// 下個月1號

datetime.parse(datetime.now.tostring("yyyy-mm-01")).addmonths(2).adddays(-1).toshortdatestring();//下下月最後一天

datetime.now.adddays(7).toshortdatestring();//7天後

datetime.now.adddays(-7).toshortdatestring();//7天前

datetime.now.date.toshortdatestring();//本年度,用tostring的字元格式化我們也很容易地算出本年度的第一天和最後一天

datetime.parse(datetime.now.tostring("yyyy-01-01")).toshortdatestring();//本年度第一天

datetime.parse(datetime.now.tostring("yyyy-01-01")).addyears(1).adddays(-1).toshortdatestring();//本年度最後一天

datetime.parse(datetime.now.tostring("yyyy-01-01")).addyears(-1).toshortdatestring(); //上年度第一天,

datetime.parse(datetime.now.tostring("yyyy-01-01")).adddays(-1).toshortdatestring();//上年度第最後一天,

datetime.parse(datetime.now.tostring("yyyy-01-01")).addyears(1).toshortdatestring(); //下年度第一天

datetime.parse(datetime.now.tostring("yyyy-01-01")).addyears(2).adddays(-1).toshortdatestring();//下年度最後一天

//本季度,

datetime.now.addmonths(0 - ((datetime.now.month - 1) % 3)).adddays(1 - datetime.now.day);//本季度第一天;

datetime.parse(datetime.now.addmonths(3 - ((datetime.now.month - 1) % 3)).tostring("yyyy-mm-01")).adddays(-1).toshortdatestring();//本季度的最後一天

datetime.now.addmonths(3 - ((datetime.now.month - 1) % 3)).tostring("yyyy-mm-01");//下季度的第一天

datetime.parse(datetime.now.addmonths(6 - ((datetime.now.month - 1) % 3)).tostring("yyyy-mm-01")).adddays(-1).toshortdatestring();// 下季度最後一天

datetime.now.addmonths(-3 - ((datetime.now.month - 1) % 3)).adddays(1 - datetime.now.day);// 上季度第一天

datetime.now.addmonths(0 - ((datetime.now.month - 1) % 3)).adddays(1 - datetime.now.day).adddays(-1).toshortdatestring();// 上季度最後一天

獲取時間(本週,上週,本月,上月)

首先此處使用的是moment.js 用法 一 node用法 npm install moment然後引入需要用的地方 官方給出如下 var moment require moment 我在react裡面引用如下 import moment from moment 原理一致,只是不同框架匯入方式不一樣...

C 根據當前時間獲取,本週,本月,本季度等時間段

datetime dt datetime.now 當前時間 datetime startweek dt.adddays 1 convert.toint32 dt.dayofweek.tostring d 本週周一 datetime endweek startweek.adddays 6 本週週日 d...

C 根據當前時間獲取,本週,本月,本季度等時間段

datetime dt datetime.now 當前時間 datetime startweek dt.adddays 1 convert.toint32 dt.dayofweek.tostring d 本週周一 datetime endweek startweek.adddays 6 本週週日 d...