c#如何获取本月最后一天_c#本月最后一天项目实例附完整源码

张开发
2026/4/11 6:50:12 15 分钟阅读

分享文章

c#如何获取本月最后一天_c#本月最后一天项目实例附完整源码
DateTime.DaysInMonth可直接获取指定年月最后一天避免AddMonths导致的跨年、闰年偏差需校验年月范围并注意DateTimeKind。用 DateTime.DaysInMonth 算出最后一天日期直接取本月最后一天别想复杂——DateTime 本身就有现成方法。核心逻辑是先拿到当前年月再查这个月有多少天然后拼出那一天的 DateTime 实例。用 DateTime.Today.Year 和 DateTime.Today.Month 获取当前年月调用 DateTime.DaysInMonth(year, month) 得到天数比如 2024 年 2 月返回 29组合成新日期new DateTime(year, month, days)示例int year DateTime.Today.Year;int month DateTime.Today.Month;int lastDay DateTime.DaysInMonth(year, month);DateTime endOfMonth new DateTime(year, month, lastDay); // 如 2024-06-30为什么不用 DateTime.AddMonths(1).AddDays(-1)这招看似聪明但容易在跨年、闰年、月末边界上翻车。比如 2023-01-31 执行 AddMonths(1) 得到 2023-02-28不是 2-31再 AddDays(-1) 就变成 2-27错了一天。AddMonths 会自动“对齐”到目标月最后有效日失去可控性它依赖当前日期的“日”部分而我们只关心“本月”不依赖某一天的值性能无差异但语义模糊、行为隐式调试时难定位处理任意年月的最后一天非仅本月如果要算 2025 年 3 月最后一天或用户选的某个年月别硬套 Today。把年、月抽成变量逻辑完全一样。 Tellers AI Tellers是一款自动视频编辑工具可以将文本、文章或故事转换为视频。

更多文章