(轉)使用c#获取某月的第一天和某月的最后一天


发布时间:2018/3/7 9:39:12  次浏览  作者:admin

/// <summary>

        /// 取得某月的第一天

        /// </summary>

        /// <param name="datetime">要取得月份第一天的时间</param>

        /// <returns></returns>

        private DateTime FirstDayOfMonth(DateTime datetime)

        {

            return datetime.AddDays(1 - datetime.Day);

        }

        /**//// <summary>
        /// 取得某月的最后一天
        /// </summary>
        /// <param name="datetime">要取得月份最后一天的时间</param>
        /// <returns></returns>
        private DateTime LastDayOfMonth(DateTime datetime)
        {
            return datetime.AddDays(1 - datetime.Day).AddMonths(1).AddDays(-1);
        }

        /**//// <summary>
        /// 取得上个月第一天
        /// </summary>
        /// <param name="datetime">要取得上个月第一天的当前时间</param>
        /// <returns></returns>
        private DateTime FirstDayOfPreviousMonth(DateTime datetime)
        {
            return datetime.AddDays(1 - datetime.Day).AddMonths(-1);
        }

        /**//// <summary>
        /// 取得上个月的最后一天
        /// </summary>
        /// <param name="datetime">要取得上个月最后一天的当前时间</param>
        /// <returns></returns>
        private DateTime LastDayOfPrdviousMonth(DateTime datetime)
        {
            return datetime.AddDays(1 - datetime.Day).AddDays(-1);
        }

http://www.cn-web.com/shtml/article/net/csharp/2009/02/04/366.shtml

 =================================================

.Net中获取一周第一天、最后一天,一月第一天、最后一天 

DateTime dt = DateTime.Now;
        //本月第一天时间   
        DateTime dt_First = dt.AddDays(-(dt.Day) + 1);
        Label1.Text = dt_First.ToString("yyyy-MM-dd");
        //将本月月数+1 
        DateTime dt2 = dt.AddMonths(1);
        //本月最后一天时间 
        DateTime dt_Last = dt2.AddDays(-(dt.Day));
        Label2.Text = dt_Last.ToString("yyyy-MM-dd");
        int weeknow = Convert.ToInt32(System.DateTime.Now.DayOfWeek);
        int daydiff = (-1) * weeknow + 1;
        int dayadd = 7 - weeknow;

//本周第一天
        lblBegin.Text = System.DateTime.Now.AddDays(daydiff).ToString("yyyy-MM-dd");

       //本周最后一天

        lblEnd.Text = System.DateTime.Now.AddDays(dayadd).ToString("yyyy-MM-dd");