asp.net后台获得本月第一天和最后一天

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了asp.net后台获得本月第一天和最后一天相关的知识,希望对你有一定的参考价值。

/// <summary>
/// 指定日期的该月第一天(yyyy-MM-dd 00:00:00)
/// </summary>
/// <param name="sThisDate">指定的日期(yyyy-MM-dd HH:mm:ss)</param>
/// <returns>该月第一天</returns>
public static string MonthFirstDate(string sThisDate)

int nYear = Year(sThisDate);//获取年份
int nMonth = Month(sThisDate);//获取月份
int nDay = 1;

return EncodeDate(nYear, nMonth, nDay) + " 00:00:00";


/// <summary>
/// 通过年、月、日得到日期部分
/// </summary>
/// <param name="nYear">年份</param>
/// <param name="nMonth">月份</param>
/// <param name="nDay">日</param>
/// <returns>日期部分</returns>
public static string EncodeDate(int nYear, int nMonth, int nDay)

string sResult = nYear.ToString("0000") + "-" + nMonth.ToString("00")
+ "-" + nDay.ToString("00");
return sResult;

//======================最后一天 我们可以换总思考方式,如下=======================
/// <summary>
/// 指定日期的该月最后一天(yyyy-MM-dd HH:mm:ss)
/// </summary>
/// <param name="sThisDate">指定的日期(yyyy-MM-dd HH:mm:ss)
</param>
/// <returns>该月最后一天</returns>
public static string MonthLastDate(string sThisDate)

int nYear = Year(sThisDate);//获取年份
int nMonth = Month(sThisDate);//获取月份
nMonth++;
if (nMonth == 13)

nYear++;
nMonth = 1;


DateTime dt = new DateTime(nYear, nMonth, 1);
dt = dt.AddDays(-1); //一个月的最后一天,就是下一个月的第一天减一
return dt.ToString("yyyy-MM-dd HH:mm:ss");


//================ 不懂的可以Hi 我! ==============
参考技术A 本月的第一天就是1 不用获取
至于最后一天
DateTime.Now.Month
取出月份 switch下 看看这个月总共有多少天

获取当月的第一天和最后一天示例

最简单获取当月第一天和最后一天 代码如下:

DateTime now = DateTime.Now; DateTime dt1 = new DateTime(now.Year, now.Month, 1); DateTime dt2 = d1.AddMonths(1).AddDays(-1); dt1是本月的第一天,dt2本月的最后一天, 最后一天的算法是:得到本月的第一天然后增加一月,再减去一天.
智能判断每个月有多少天: 

//返回每月的第一天和最后一天 public static void ReturnDateFormat(int month, out string firstDay, out string lastDay) { int year = DateTime.Now.Year + month / 12; if (month != 12) { month = month % 12; } switch (month) { case 1,3,5,7,8,10,12: firstDay = DateTime.Now.ToString(year + "-0" + month + "-01"); lastDay = DateTime.Now.ToString(year + "-0" + month + "-31"); break;
         
case 4,6,9,11: firstDay = DateTime.Now.ToString(year + "-0" + month + "-01"); lastDay = DateTime.Now.ToString(year + "-0" + month + "-30"); break;
        
default:
            //2月
            firstDay = DateTime.Now.ToString(year + "-0" + month + "-01");
                    if (DateTime.IsLeapYear(DateTime.Now.Year))
                        lastDay = DateTime.Now.ToString(year + "-0" + month + "-29");
                    else
                        lastDay = DateTime.Now.ToString(year + "-0" + month + "-28");
                    break;
 } }

 

以上是关于asp.net后台获得本月第一天和最后一天的主要内容,如果未能解决你的问题,请参考以下文章

获取本月、本季、本年第一天和最后一天等等sql(sql server)

python怎么获得每个月的第一天和最后一天

帆软的日期函数怎么取本月的第一天和最后一天

Java获取本月最后一天问题

获取当月的第一天和最后一天示例

js 获取当前月和当前周的第一天和最后一天