
春节、端午和中秋按照农历月日确定。农历月以朔日开始,十二个农历月比一个回归年短,还要通过闰月协调季节,所以同一个农历日期对应的公历日期每年会移动。
节日规则本身没有每年改变,变化的是两套历法之间的对应关系。
农历月为什么会移动
一个朔望月平均约 29.53 天,农历月通常是 29 天或 30 天。十二个月合计约 354 天,比公历平年少十多天。
如果某年春节落在公历 2 月中旬,下一年在没有闰月影响时可能提前约十一天。加入闰月后,后面的农历日期又会向后调整。
节日日期怎样换算
换算一个农历节日,需要先获得目标年份的正式农历月序和每月初一对应的公历日期,再找到指定月日。
以中秋节为例:
- 确定目标农历年的八月;
- 找到八月初一对应的公历日期;
- 从初一顺数到十五;
- 核对该月是否受闰月和月长影响;
- 输出对应的公历日期和星期。
实际程序使用完整历法数据,不通过“去年日期减十一天”这种近似方法推算。
闰月会不会让节日过两次
网站的基础节日规则会指定普通农历月份,例如中秋为农历八月十五,不把闰八月十五自动当成第二个中秋。
部分地区可能有自己的闰月习俗,但那属于民俗安排,不能据此改写通用节日日期。
清明节为什么不一样
清明既是二十四节气,也是节日。它的日期来自太阳到达相应黄经的交节时刻,不是固定的农历月日。
所以清明常落在公历 4 月 4 日或 5 日,需要按具体年份的节气数据查询。
日期和放假安排要分开
计算出春节、端午或中秋的日期,不代表已经知道当年连续放几天、哪天补班。放假调休要等政府正式发布。
详细区别见传统节日与法定节假日。
怎样查询目标年份
打开节日与假期选择节日,或在万年历切换年份和月份。查询时应带上年份,不能只问“八月十五是几号”。
网站支持 1900—2100 年日期换算,默认使用北京时间。超出范围的日期不会用固定公式猜测。
参考资料
正文参考的官方资料、古籍和网站采用的计算方法。
- 官方资料农历历法
香港天文台 · 阴阳合历、朔望月、朔日为初一、闰月安排
核对农历以月相定月、以太阳周年运动协调季节的基础规则。(查阅:2026-07-14) - 国家标准GB/T 33661-2017《农历的编算和颁行》
国家标准全文公开系统 · 农历编算、历月、闰月、节气、北京时间
核对现代农历编算所使用的术语和基本规则。(查阅:2026-07-14) - 网站资料网站公历与农历计算说明
万年历专业版 · 1900–2100支持范围、北京时间、公历农历换算、节日日期换算
用于说明网站当前可查询的日期范围和页面显示方式。

