C# 计算两个日期之间的月份数(差值)


var months = ((DateTime.Now.Year - baseDate.Year) * 12) + DateTime.Now.Month - baseDate.Month;

(当前日期年份 - 目标日期年份 * 12)+ 当前日期月份 - 目标日期月份

一年 12 个月是固定的,所以年份差乘以 12 得出的月份加上目标日期与当前日期的差值既两个日期之间的月份总数。

 

 

顺便来一个获取当前月份最后一天的逻辑,其实在很多年前数据库存储过程盛行的时候,大部分就是用下面这种方式。

首先将日期格式化为 yyyy-MM-01,这样就得到当月的第一天。在当前月上再加一个月,然后减一天就得到当月的最后一天了。

baseDate.AddMonths(i + 1).AddDays(-1)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM