java根据日期时间换算生辰八字算法。

最好要有源码,谢谢各位

生辰八字的介绍请参考:http://baike.baidu.com/view/158.htm#2

具体算法:
1、设置一个下限年,比如1960,1960年以前的就不给查。并且查万年历,该年节后是庚子年。
2、将天干和地支分别装在两个数组里面。
3、以该年为基准线,设定循环,以查询年为上限年,循环计数器每加一年,天干和地支数组标号各右移一位,然后if判断是否数组到底了,到底了则从头开始。

月、时的算法类似。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-08
大多数天干地支组合规律基本没问题,但剩下细节很麻烦,
关键是(1)阴历中的闰月规律
(2)同一月份还得分是在节气前还是节气后(节气前按上个月算)
等麻烦处理的问题
第2个回答  2013-08-20
什么java, 查万年历很方便的.