Ganzhi.NET

農曆互轉、二十四節氣精確到分、干支四柱、生肖與農曆節日——涵蓋 1901~2100,天文計算並經多來源驗證。零依賴、離線可用。

核心特色

🌙

農曆互轉 1901~2100

國曆↔農曆雙向轉換,閏月以 IsLeapMonth 明確表示,不存在的日期用 TryToSolar 優雅拒絕。

☀️

節氣精確到分

全精度 VSOP87D 星曆天文計算,經 USNO 與紫金山天文台等多來源逐分驗證;台灣時間 UTC+8。

🀄

干支四柱

年/月/日/時柱:年柱可選立春(命理)或初一(民俗)界線,月柱依節氣精確時刻切換,含晚子時規則。

🏮

生肖與農曆節日

除夕、春節、元宵、端午、中秋等節日查詢,含臘八一年兩次/零次特例;生肖同樣支援雙界線。

快速開始

1. 安裝套件

dotnet add package Ozakboy.TaiwanKit.Ganzhi.NET

2. 農曆與節氣

using Ozakboy.TaiwanKit.Ganzhi.NET;

// 國曆 ↔ 農曆
LunarDate lunar = LunarConverter.ToLunar(new DateTime(2026, 2, 17));
// → "2026年正月初一"

// 節氣(精確到分,台灣時間)
SolarTerms.GetExactTime(2026, SolarTerm.LiChun);   // 2026-02-04 04:02

3. 干支與節日

// 干支四柱(年柱可選立春/初一界線)
FourPillars p = GanzhiCalendar.GetFourPillars(new DateTime(2026, 2, 20, 10, 0, 0));
// p.Year.ChineseName → "丙午"、p.Month.ChineseName → "庚寅"

// 生肖與農曆節日
GanzhiCalendar.GetZodiac(new DateTime(2026, 6, 1));            // Horse(馬)
LunarFestivals.GetFestivalDate(2026, LunarFestival.MidAutumn); // 2026-09-25