《開源精選》是我們分享Github、Gitee等開源社群中優質專案的欄目,包括技術、學習、實用與各種有趣的內容。本期推薦的是一個支援公曆(陽曆)和農曆(陰曆、老黃曆)的日曆工具庫——Lunar。
Lunar是一個無依賴的支援陽曆和陰曆的日曆工具庫,提供了js、java、c#、php、python、go、typescript、flutter版本,不依賴第三方,目前支援公曆和農曆、星座、干支、生肖、節氣、節日、彭祖百忌、每日宜忌、吉神宜趨、凶煞宜忌、吉神方位、衝煞、納音、星宿、八字、五行、十神、建除十二值星、青龍名堂等十二神、黃道日及吉凶等。
快速開始(Java版本):
依賴
// maven
// gradleimplementation ‘com。github。6tail:lunar-java:v1。2。5’
示例程式碼
陽曆
// 年月日Solar d = Solar。fromYmd(2016, 1, 1);System。out。println(d);// 年月日時分秒d = Solar。fromYmdHms(2016, 1, 1, 20, 35, 0);System。out。println(d);// 日期d = Solar。fromDate(new Date());System。out。println(d。toFullString());// 儒略日d = Solar。fromJulianDay(2458960。5);System。out。println(d。toFullString());// 八字反推陽曆List
輸出
八字
//今日八字Lunar lunar = Lunar。fromDate(new Date());EightChar d = lunar。getEightChar();System。out。println(d);System。out。println(d。getYearWuXing() + “, ” + d。getMonthWuXing() + “, ” + d。getDayWuXing() + “, ” + d。getTimeWuXing());System。out。println(d。getYearNaYin() + “, ” + d。getMonthNaYin() + “, ” + d。getDayNaYin() + “, ” + d。getTimeNaYin());System。out。println(d。getYearShiShenGan() + “, ” + d。getMonthShiShenGan() + “, ” + d。getDayShiShenGan() + “, ” + d。getTimeShiShenGan());// 年支十神System。out。println(“年支十神 = ” + d。getYearShiShenZhi());// 月支十神System。out。println(“月支十神 = ” + d。getMonthShiShenZhi());// 日支十神System。out。println(“日支十神 = ” + d。getDayShiShenZhi());// 時支十神System。out。println(“時支十神 = ” + d。getTimeShiShenZhi());// 獲取男運Yun yun = d。getYun(1);// 起運System。out。println(“出生” + yun。getStartYear() + “年” + yun。getStartMonth() + “個月” + yun。getStartDay() + “天后起運”);// 獲取大運表DaYun[] daYunArr = yun。getDaYun();for (int i=0, j=daYunArr。length; i 輸出 其他示例: 年曆 月曆 老黃曆 更多內容大家可自行前往閱讀。 開源地址: gitee.com/6tail/lunar-java