為什麼印刷黃曆與網上黃曆會有不同結果
兩部黃曆可能對農曆日期給出相同結果,卻在嫁娶、某個方位或吉時上意見不同。它們可能採用了不同類型的數據、不同的分界約定,或不同的編排規則。有效的比較應從存在差異的字段入手,而不是把整部曆書當作一個單一結果。
不同類型的數據
日期換算回答的是某個民用日期對應哪一個農曆年、月、日;節氣計算回答的是太陽何時到達指定黃經。宜忌則又增加了一層信息:按傳統把活動分為適宜進行和應當避免兩類。天文計算一致,並不要求事項規則也一致。
本站從所用曆法程序庫的黃曆表中查取每日事項。這一查表過程,與求取朔和節氣的天文計算相互獨立。另一部黃曆可能採用不同的事項表,或對某日所附傳統條件賦予不同權重。
即使看起來相似的標籤,也可能在回答不同的問題。建除值日屬於以建、除開頭的十二項序列;值神屬於另一套十二項序列;黃道、黑道則給後者分類。因此,“平”和“司命”可以同時出現,並不矛盾。
| 出現差異的字段 | 可能原因 | 應比較的內容 |
|---|---|---|
| 農曆日或月 | 所選民用日期、參考時間或閏月標記不同 | 完整日期及所用曆法約定 |
| 年干支 | 以春節或立春為年界 | 干支年起始規則 |
| 月干支 | 採用農曆月規則或節令分界 | 月份類型,以及按日期還是按瞬間分界 |
| 23:00前後的日干支 | 以午夜或晚子時為日界 | 鐘錶時間及日柱規則 |
| 宜或忌 | 事項表、術語或月干支輸入不同 | 具體事項,以及適用於整日還是某個時辰 |
| 神明方位 | 所指神明、時間範圍或傳統版本不同 | 神明名稱及所用方位表 |
| 綜合吉利等級 | 版本彙總各類判斷的方法不同 | 該版本對等級的說明 |
分界約定
節令分界實例:2026年9月7日
2026年白露發生在9月7日22:41,時區為UTC+8,時間取整到分鐘。它標誌著酉月這一節令月的開始。9月7日仍屬農曆七月,下一個農曆月於9月11日開始。
9月7日中午,尚未到白露的交節時刻,但交節所在的民用日期已經開始。採用交節日始換月的算法,此時已進入新月;等到精確交節時刻才換月的算法,則尚未更換。
| 2026年9月7日12:00(UTC+8)所查項目 | 結果 |
|---|---|
| 公曆日期 | 2026年9月7日 |
| 農曆日期 | 七月廿六 |
| 按“節”所在日期的日始換月所得干支月 | 丁酉 |
| 按“節”的精確時刻換月所得干支月 | 丙申 |
兩種月份輸入可能得到不同的黃曆分類,但農曆日期保持不變。採用按日期換月的每日頁面,也可以在全天保留同一個月干支標籤,而精確到時刻的計算則可能在當天中途更換標籤。
只有十二個“節”才開啟這些節令月;它們與十二個中氣交替出現。例如,秋分是中氣,不會在白露與寒露之間再開啟另一個干支月。
民用日期與晚子時
子時跨越23:00至01:00,前一小時在午夜之前,後一小時在午夜之後。有些日柱算法從23:00起把日干支推進一天,另一些則一直保留當前民用日的干支,直到午夜。
本站的計算引擎提供這兩種處理方式。普通每日干支仍與民用日期綁定;提前換日的規則用於時干支,以及若干時辰分類的計算。因此,深夜出現的差異,要看比較的是哪一個字段,並不一定表示農曆日期已經更換。
參考時間與歷史日期
同一瞬間在不同時區會顯示不同的鐘表時間,而單獨一個日期標籤並不是瞬間。把某時區中的日期與轉換到另一時區的時間戳比較,可能在尚未應用任何黃曆規則之前,就已經選中了不同的民用日。接近午夜的天象尤其重要,因為朔所在的參考日期會成為農曆初一。
早期日期還涉及另一項區別。本站引擎對1582年10月4日及以前採用儒略曆民用日期,下一日則為格里曆的1582年10月15日。逆推格里曆換算器會把格里曆規則向過去延伸,因此,同樣寫法的早期日期可能指向不同的一天。這一軟件約定,並不能證明某份中國歷史文獻當時使用的是哪一種曆法。
印刷版本與編排取捨
印刷黃曆把編纂者提供的歷法資料,與出版者選定的版式、附加內容和說明組合在一起。兩部書可能共用曆法資料,卻列出不同的事項。一部書可能給出綜合等級,另一部則分別印出幾種分類。
某項活動沒有被列出,也可能有不同的原因。編纂者可能為節省空間而省去較少查閱的事項,或另有說明,規定未列事項應如何處理。網上事項表中的“未列出”,並不會自動繼承某個印刷版本的規則。如何理解省略,應以該版本附帶的說明為依據。
翻譯也會造成表面上的衝突。納采是正式提親並致送禮物,嫁娶則是婚姻事項,但兩者在英文中都可能被簡化為“wedding”。把它們合併翻譯,會使兩個不同條目看起來像是對同一活動作出了相反判斷。保留原詞可消除這種錯位。
比較時,記錄完整日期、存在差異的字段、原始事項或分類名稱,以及版本或軟件採用的約定,最有幫助。只有這些都一致時,剩下的差異才屬於所用規則或數據本身。數一數頁面上其他不相關的吉利標籤,並不能解決這種分歧。