6tail / lunar-go

日历、公历(阳历)、农历(阴历、老黄历)、道历、佛历,支持节假日、星座、儒略日、干支、生肖、节气、节日、彭祖百忌、每日宜忌、吉神宜趋凶煞宜忌、吉神(喜神/福神/财神/阳贵神/阴贵神)方位、胎神方位、冲煞、纳音、星宿、八字、五行、十神、建除十二值星、青龙名堂等十二神、黄道黑道日及吉凶等。lunar is a calendar library for Solar and Chinese Lunar.
https://6tail.cn/calendar/api.html
MIT License
229 stars 61 forks source link

输入异常的日期,输出结果处理的不是很好 #13

Open me-cs opened 12 months ago

me-cs commented 12 months ago

代码片段 func main() { t := time.Date(2021, 2, 29, 0, 0, 0, 0, time.Local) fmt.Println(t) solar := calendar.NewSolar(2021, 2, 29, 0, 0, 0) fmt.Println(solar.ToFullString()) fmt.Println(solar.GetLunar().ToFullString()) return }

输出: 2021-03-01 00:00:00 +0800 CST 2021-02-29 00:00:00 星期一 双鱼座 二〇二一年正月十八 辛丑(牛)年 庚寅(虎)月 戊申(猴)日 子(鼠)时 纳音[壁上土 松柏木 大驿土 桑柘木] 星期一 西方白虎 星宿毕月乌 彭祖百忌[戊不受田田主不祥 申不安床鬼祟入房] 喜神方位 阳贵神方位 阴贵神方位 福神方位 财神方位 冲[(壬寅)虎] 煞[南]

如2021, 2, 29,实际上没有这个时间,golang 的标准库会处理成3月1号,本库依然输出2021-02-29日,请问作者这里是怎么考量的?

6tail commented 11 months ago

NewSolar确实没有做细化的校验,后续版本修复。