C#如何获得当前月的第一天与最后一天

C#如何获得当前月的第一天与最后一天,第1张

            int days = DateTimeDaysInMonth(DateTimeNowYear, DateTimeNowMonth);

            MessageBoxShow("First Day (DateTime): " + DateTimeNowAddDays(1 - DateTimeNowDay)ToShortDateString());

            MessageBoxShow("Last Day (DateTime): " + DateTimeNowAddDays(days - DateTimeNowDay)ToShortDateString());

public static Date getMonthDeviation(int n ) {

Calendar calendar = CalendargetInstance();//获取当前日期

calendaradd(CalendarMONTH, n);//n代表和本月偏移 0本月、1后一月,-1前一月

calendarset(CalendarDAY_OF_MONTH,1);//设置为1号,当前日期既为本月第一天

calendarset(CalendarHOUR_OF_DAY,0);//将小时至0

calendarset(CalendarMINUTE,0);//将分钟至0

calendarset(CalendarSECOND,0);//将秒至0

calendaradd(CalendarSECOND, -1);// 如果需要获取最后一天,则月份偏移后,在1号0时0分0秒基础上-1秒

Date  day = calendargetTime();

return day;

}

考虑到无论是第一天还是最后一天都是要精确到时分秒,所以要初始化时设置时分秒。

例如本月为:2020-12 

获取本月最后一天:DateUtilgetMonthEnd(1) ,下个月的第一天-1秒

获取上个月最一天:DateUtilgetMonthEnd(0) ,本月的第一天-1秒

获取本月第一天: DateUtilgetMonthEnd(0) ,同时去掉偏移calendaradd(CalendarSECOND, -1);

获取月的第一天和最后一天的日期

Calendar ca = CalendargetInstance();

casetTime(someDate); // someDate 为你要获取的那个月的时间

caset(CalendarDAY_OF_MONTH, 1);

Date firstDate = cagetTime();

caadd(CalendarMONTH, 1);

caadd(CalendarDAY_OF_MONTH, -1);

Date lastDate = cagetTime();

代码如下:

DateTime now = DateTimeNow;

DateTime d1 = new DateTime(nowYear, nowMonth, 1);

DateTime d2 = d1AddMonths(1)AddDays(-1);

d1是本月的第一天,d2本月的最后一天,

最后一天的算法是:得到本月的第一天然后增加一月,再减去一天,

当月第一天trunc(sysdate,'MM') 当月最后一天last_day(trunc(sysdate,'MM')) 当年第一天trunc(sysdate,'YYYY') 当年最后一天last_day(add_months(trunc(sysdate,'YYYY'),11))

以上就是关于C#如何获得当前月的第一天与最后一天全部的内容,包括:C#如何获得当前月的第一天与最后一天、Date之获取月的第一天和最后一天、java 获取当前月的第一天等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9337028.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存