阴历和阳历生日转换器,阳历生日转换阴历生日

阴历和阳历生日转换器,阳历生日转换阴历生日,第1张

提起阴历和阳历生日转换器,大家都知道,有人问必须历转换成阳历,找这么一量转换的工具,另外,还有人想问阴历与阳历的生日转换,你知道这是怎么回事?其实农历新历转换器,下面就一起来看看阳历生日转换阴历生日,希望能够帮助到大家!

阴历和阳历生日转换器

阳历生日是年7月9日星期日,转成阴历是年六月十二,生肖属猪,距离今日已经过去天。

阴历甲午()年六月十二,距离今日还有天。(阳历是年7月8日星期二)查生日阴历阳历对照表。

阳历生日转换阴历生日?如何查询自己的阴历生日。

生日 如何农历转换公历?

出生是年6月23日出生日期查询农历生日。

如果这时间您给的是阳历,那么阴历你就是5月23日是生日。以后无论那一年的阴历5月23日都是你的生日。

有了阴历生日,变换的就是阳历得日子。每一年的日历牌您都可以查出对应的历日子。

以92年6月23日为阴历日子计算,年您的阳历生日是7月25日。以此类推。祝开心,生日快乐!

阴历和阳历生日转换器:必须历转换成阳历,找这么一量转换的工具

单独查询的话,万年历就行。万年历农历公历转换。

找个阳历日期转换为阴历日期程序,加一个循环,我一段程序就行了

找不到高手?让文员查他几个小时就行了

如何在EXCEL中实现生日阳历到阴历的批量转换。

OptionExplicit

DimWeekName(7),MonthAdd(11),NongliData(99),TianGan(9),DiZhi(11),ShuXiang(11),DayName(30),MonName(12)

DimcurTime,curYear,curMonth,curDay,curWeekday阴历和公历的转换器。

DimGongliStr,WeekdayStr,NongliStr,NongliDayStr万年历大全。

Dimi,m,n,k,isEnd,bit,TheDate

Dimyear,month,day,grid,grid_date

Subdatetest()’这是转换样例农历生日计算器。

DebugPrintcalendar(“-8-15”)

EndSub生日查询系统。

Functioncalendar(grid)’转换函数1800~2100年公历农历对照表。

grid_date=grid星座查询农历转换阳历。

year=Mid(grid_date,1,4)阴历四月三十是阳历几月几号。

month=Mid(grid_date,6,1)阳历6月26生日农历是几号。

day=Mid(grid_date,8,2)今天是农历几月几日几号。

‘星期名

WeekName(0)=””

WeekName(1)=”星期日”公历如何换算成农历。

WeekName(2)=”星期一”

WeekName(3)=”星期二”农历3月20生日阳历是多少。

WeekName(4)=”星期三”

WeekName(5)=”星期四”时辰阳历公历不分吗。

WeekName(6)=”星期五”

WeekName(7)=”星期六”

‘天干名称

TianGan(0)=”甲”有没有1900以前的万年历。

TianGan(1)=”乙”

TianGan(2)=”丙”

TianGan(3)=”丁”

TianGan(4)=”戊”

TianGan(5)=”己”生日日期计算器。

TianGan(6)=”庚”阴历阳历公式。

TianGan(7)=”辛”

TianGan(8)=”壬”

TianGan(9)=”癸”农历和新历生日怎么算。

‘地支名称阳历1971年10月28日。

DiZhi(0)=”子”

DiZhi(1)=”丑”农历1999年7月14日生日新历是。

DiZhi(2)=”寅”

DiZhi(3)=”卯”上的生日在日历上怎么看。

DiZhi(4)=”辰”

DiZhi(5)=”巳”

DiZhi(6)=”午”1月18号阳历生日。

DiZhi(7)=”未”

DiZhi(8)=”申”

DiZhi(9)=”酉”

DiZhi(10)=”戌”

DiZhi(11)=”亥”

‘属相名称

ShuXiang(0)=”鼠”

ShuXiang(1)=”牛”

ShuXiang(2)=”虎”

ShuXiang(3)=”兔”

ShuXiang(4)=”龙”

ShuXiang(5)=”蛇”

ShuXiang(6)=”马”

ShuXiang(7)=”羊”

ShuXiang(8)=”猴”

ShuXiang(9)=”鸡”

ShuXiang(10)=”狗”

ShuXiang(11)=”猪”

‘农历日期名

DayName(0)=””

DayName(1)=”初一”

DayName(2)=”初二”

DayName(3)=”初三”

DayName(4)=”初四”

DayName(5)=”初五”

DayName(6)=”初六”

DayName(7)=”初七”

DayName(8)=”初八”

DayName(9)=”初8221;

DayName(10)=”初8221;

DayName(11)=”十一”

DayName(12)=”十二”

DayName(13)=”十三”

DayName(14)=”十四”

DayName(15)=”十五”

DayName(16)=”十六”

DayName(17)=”十七”

DayName(18)=”十八”

DayName(19)=”十8221;

DayName(20)=”二8221;

DayName(21)=”二十一”

DayName(22)=”二十二”

DayName(23)=”二十三”

DayName(24)=”二十四”

DayName(25)=”二十五”

DayName(26)=”二十六”

DayName(27)=”二十七”

DayName(28)=”二十八”

DayName(29)=”二十8221;

DayName(30)=”三8221;

‘农历月份名

MonName(0)=””

MonName(1)=”正”

MonName(2)=”二”

MonName(3)=”三”

MonName(4)=”四”

MonName(5)=”五”

MonName(6)=”六”

MonName(7)=”七”

MonName(8)=”八”

MonName(9)=”8221;

MonName(10)=”8221;

MonName(11)=”十一”

MonName(12)=”腊”

‘公历每月前面的天数

MonthAdd(0)=0

MonthAdd(1)=31

MonthAdd(2)=59

MonthAdd(3)=90

MonthAdd(4)=

MonthAdd(5)=

农历新历转换器

MonthAdd(6)=

MonthAdd(7)=

MonthAdd(8)=

MonthAdd(9)=

MonthAdd(10)=

MonthAdd(11)=

‘农历数据

NongliData(0)=

NongliData(1)=

NongliData(2)=

NongliData(3)=

NongliData(4)=

NongliData(5)=

NongliData(6)=

NongliData(7)=

NongliData(8)=

NongliData(9)=

NongliData(10)=

NongliData(11)=

NongliData(12)=

NongliData(13)=

NongliData(14)=

NongliData(15)=

NongliData(16)=

NongliData(17)=

NongliData(18)=

NongliData(19)=

NongliData(20)=

NongliData(21)=

NongliData(22)=

NongliData(23)=

NongliData(24)=

NongliData(25)=

NongliData(26)=

NongliData(27)=

NongliData(28)=

NongliData(29)=

NongliData(30)=

NongliData(31)=

NongliData(32)=

NongliData(33)=

NongliData(34)=

NongliData(35)=

NongliData(36)=

NongliData(37)=

NongliData(38)=

NongliData(39)=

NongliData(40)=

NongliData(41)=

NongliData(42)=

NongliData(43)=

NongliData(44)=

NongliData(45)=

NongliData(46)=

NongliData(47)=46

NongliData(48)=

NongliData(49)=

NongliData(50)=

NongliData(51)=

NongliData(52)=

NongliData(53)=

NongliData(54)=

NongliData(55)=

NongliData(56)=

NongliData(57)=

NongliData(58)=

NongliData(59)=

NongliData(60)=

NongliData(61)=

NongliData(62)=

NongliData(63)=

NongliData(64)=

NongliData(65)=

NongliData(66)=

NongliData(67)=

NongliData(68)=

NongliData(69)=

NongliData(70)=

NongliData(71)=

NongliData(72)=

NongliData(73)=

NongliData(74)=

NongliData(75)=

NongliData(76)=

NongliData(77)=

NongliData(78)=

NongliData(79)=

NongliData(80)=

NongliData(81)=

NongliData(82)=

NongliData(83)=

NongliData(84)=

NongliData(85)=

NongliData(86)=

NongliData(87)=

NongliData(88)=

NongliData(89)=

NongliData(90)=

NongliData(91)=

NongliData(92)=

NongliData(93)=

NongliData(94)=

NongliData(95)=

NongliData(96)=

NongliData(97)=

NongliData(98)=

NongliData(99)=

‘生成当前公历年、月、日==>GongliStr

curYear=year

curMonth=month

curDay=day

GongliStr=curYear&”年”

If(curMonth<10)Then

GongliStr=GongliStr&”0″&curMonth&”月”

Else

GongliStr=GongliStr&curMonth&”月”

EndIf

If(curDay<10)Then

GongliStr=GongliStr&”0″&curDay&”日”

Else

GongliStr=GongliStr&curDay&”日”

EndIf

‘生成当前公历星期==>WeekdayStr

curWeekday=Weekday(curTime)

WeekdayStr=WeekName(curWeekday)

‘计算到初始时间年2月8日的天数:-2-8(正月初一)

TheDate=(curYear-)+Int((curYear-)/4)+curDay+MonthAdd(curMonth-1)-38

If((curYearMod4)=0AndcurMonth>2)Then

TheDate=TheDate+1

EndIf

‘计算农历天干、地支、月、日

isEnd=0

m=0If(NongliData(m)<)Then

k=11

Else

k=12

EndIf

n=kIf(n<0)Then

ExitDo

EndIf

‘获取NongliData(m)的第n个二进制位的值

bit=NongliData(m)

Fori=1TonStep1

bit=Int(bit/2)

Next

bit=bitMod2

If(TheDate<=29+bit)Then

isEnd=1

ExitDo

EndIf

TheDate=TheDate-29-bit

n=n-1

Loop

If(isEnd=1)Then

ExitDo

EndIf

m=m+1

Loop

curYear=+m

curMonth=k-n+1

curDay=TheDate

If(k=12)Then

If(curMonth=(Int(NongliData(m)/)+1))Then

curMonth=1-curMonth

ElseIf(curMonth>(Int(NongliData(m)/)+1))Then

curMonth=curMonth-1

EndIf

EndIf

‘生成农历天干、地支、属相==>NongliStr

NongliStr=”农历”&TianGan(((curYear-4)))&DiZhi(((curYear-4)))&”年”

NongliStr=NongliStr&”(“&ShuXiang(((curYear-4)))&””

‘生成农历月、日==>NongliDayStr

If(curMonth<1)Then

NongliDayStr=”闰”&MonName(-1curMonth)

Else

NongliDayStr=MonName(curMonth)

EndIf

NongliDayStr=NongliDayStr&”月”

NongliDayStr=NongliDayStr&DayName(curDay)

calendar=NongliStr&NongliDayStr&”)”

EndFunction

以上就是与阳历生日转换阴历生日相关内容,是关于必须历转换成阳历,找这么一量转换的工具的分享。看完阴历和阳历生日转换器后,希望这对大家有所帮助!

首先我复制粘贴的,还有就是算法复杂,如果你的心算能力强就会更快些!

阳历日期推算阴历日期的方法:

阴历日期是以月亮的圆缺为计月单位,其以逢朔为初一,以月望为十五(大月为十六日),以月晦为二十九日(大月为三十日)。然而目前记时通常用阳历日期表达,如欲将阳历日期换算成阴历日期可以用以下两种方法:

其一是查《新编万年历》,如查1984年6月8日是阴历几日?翻开万年历6月10日是阴历十一,则逆推6月8日是阴历初九。

其二可以利用公式推算阴历日期:

设:公元年数-1977(或1901)=4Q+R

则:阴历日期=14Q+106(R+1)+年内日期序数-295n

(注:式中Q、R、n均为自然数,R<4)

例:1994年5月7日的阴历日期为:

1994-1977=17=4×4+1

故:Q=4,R=1

则:5月7日的阴历日期为:

14×4+106(1+1)+(31+28+31+31+7)-295n

=2042- 295n

然后用295去除2042得商数6272,6即是n值,余数27即是阴历二十七日。

一、 推算年干支口诀

掌上推算年干支,支子花甲起根源。

阳支都是旬开始,天干为甲尾四年。

隔位逆推十年正,顺推年尾五零三。

逐支加减六十数,掌上推算千万年。

推算方法:“掌上推算年干支,支子花甲起根源。”此法是将地支排列在掌中,手掌上推算年干支的方法。 首先,在掌上将地支定位(图一),然后以地支子位为花甲子的开始,可定为1864,1924,也可定为1984年,其年都是甲子年。“阳支都是旬开始,天干为甲尾四年。”地支中的子,寅,辰,午,申,戌都是阳支,而且也是每旬的开始,天干都为甲,即甲子,甲戌,甲申,甲午,甲辰,甲寅,这些年的公历尾数均为四。“隔位逆推十年正,顺推年尾五零三。”天干十数,地支十二数,天干与地支组合天干每循环一次,地支总与下二支(旬空)。其中余下的第一支便是下旬的开始。我们从地支子位开始,隔一位逆推,即从子位逆推隔亥到戌,恰是甲戌旬的开始,再逆推隔一位酉至申为甲申旬开始,------年尾数都为四,年间隔都是十年。在确定旬开始以后,以该年尾数四为起点,从下支开始挨位顺推,其公历年尾数分别是5,6,8,9,0,1,2,3,而后又是下旬的开始。“逐支加减六十数,掌上推算千万年”掌握此法推算,如果将甲子年定为1984年,按口诀可知1994年为甲戌,2004年为甲申,2014年为甲午等。确定每旬开始的公历年数后,可根据需要顺推任何一年的干支,虽意性很大,可推千年万年的干支。

二、推算月、时干支口诀

天干五合前为主,月时干序一至五。

年干隔数配寅月,日干配时本数身。

古往今来,年上起月,日上起时,是按天干五合的方法,分成五种情况,即甲、己之年(日)定月(时)的方法相同------。我们也采用这种方法,并一前一天干为主,即甲、己以甲为主,乙、庚以乙为主,------,配上序数甲为1,乙为2,丙为3,丁为4,戊为5(图二),成为推算月、时的固定序数。“年干隔位配寅月”,推算某年的月干,先看该年干与何干相合,然后按“天干五合前为主”的方法,查出该干的序数,并设此干为零,按序数隔干确定寅月的天干。如98年是戊寅,戊癸干合,戊年与癸年的天干相同,属于同一种定寅月天干法。五的序数尾5 ,从5 开始,隔己、庚、辛、壬、癸五天干到甲,就可以算出98年寅月的天干是甲,其他月的天干就好推算了。“日干配时本身数” ,此句推算方法与年干定寅月天干发基本相同,只是在确定日干合干以后,从合之干的前干本身算起,按序数查,到何干,便是该日子时的天干。如己日,己与甲同一类型,以甲干为主,甲的序数为“1”以本身配子时,该日子时的天干为甲,即甲子时。同样,癸日子时吧的天干,因戊癸合干,以五为主,序数为5,从5开始数到壬,癸日子时为壬子时。

二、 农历大小月卦口诀

一年上下两卦编,一七两月初爻安。

阴大阳小编上卦,遇有闰月年十三。

闰爻相邻爻间伏,确定年月按节算。

推算方法:此诀是为了掌握某年农历大小月的排列顺序和有否闰月而编的。“一年上下两卦编,一、七两月初爻安” ,在 正常情况下,农历每年为十二个月。我们可以将一至六月编为前卦,七至十二月编为后卦,几一年编为两卦,并以一月为前卦的处爻,七月为后卦的初爻。“阴大阳小编上卦,遇有闰月年十三”,我们将大月规定用用阴爻表示,小月用阳爻表示,按大小顺序用阴阳爻将一年编为两卦。遇到有闰月的年份就多出一个月,一年为十三个月。“闰年相邻爻间伏,确定年月按节算”。在出现有闰月的年份时,按闰月大小用阴阳爻表现出来,并标在 闰月的前后两月的爻位中间的左侧,如同伏卦一样,一看便知到闰几月,是大月还是小月。同时,提醒您农历年、的确定,不是按万年历编出的月份确定的,而是按节气确定的。如1998年,按上述方法可编成《井》和《坎》两卦,而今年闰5月为小月,上半年月卦符号为“: 。 : 。 。 : ”,下半年的月卦符号为“ = 丨 = = 丨 = ”,上半年卦第5、6爻间伏一阳爻,可知今年润五月为29天。

四、推算日干支口诀

推算日干支,可以按公历和农历两种方法推算。

⑴ 农历日干支推算口诀:

大小月卦记心间,正一干支起根源。

大后干同地支冲,小后干支退一天。

初一十三二十五,支同隔干一位算。

推算方法:“大小月卦记心间,正一干支起根源。”农历的大月为30天小月为29天,固定不变。要推农历曰干支,先要按《农历大小月卦口诀》将推算之年编上两卦,以便在推算日千支时运。除此之外,还要记住农历正月初一日的干支,因为它是推算一年逐日的基础。“大后干同地支冲,小后干支退一天。”农历天干与地支组合,天干循环25次。根据这一规律,知道某月初一日干支,如果这个月是小月则应在干同支冲的情况下,干支各减一位,则是小月后下月初一日干支。如本月初一干支为己卯,这个月是大月,下月初一干支为己酉。如果这个月是小月,则下月初一干支应在己酉退一位后确定,即为戊申日。“初一十三二十五,支同干隔一位算。”此两句是在确定某月初一干支后,将这个月分成三个阶段,即初一至十二,十三至二十四二十五以后。初一、十三、二十五日在干支上也是有规律的。知道初一干支,只要将该日天干隔一位顺推,而地支不变。同理,知道十三日干支,支同干隔一位,也知道二十五日的干支。如初一日干支为甲子,则十三日干支为丙子,二十五日干支为戊子。掌握这个方法,就可以根据所推之日属于哪一段,便可以很快知道这天的干支了。

⑵公历日干支推算口诀:

元旦干支为根源,大小二月记心间。

小月干同地支冲,大月上句加一天。

申子辰年年为闰,干同支冲退一天。

余年二月二十八,干同支冲退一天。

月首十三二十五,支同隔干一位算。

推算方法:“元旦干支为根源,大小二月记心间。”推算公历日干支,首先要记住元旦曰的干支。同时,还要知道大小月及二月的天数。公历大月为31天,小月为30天,其大小月是固定不变的,唯独二月有29天和28天之分。因此,要特别注意哪年二月为29天,那年二月为28天。“小月干同地支冲,大月上句加一天。”公历小月为30天,按农历大月推算口诀,我们知道本月初一日干支,与下月初一干支则是天干相同地支相冲。公历大月为31天,在小月干地相冲的基础上,干支各加一位数,即是大月后下月一日的干支。“申子辰年年为闰,干同支冲退一天。”经过研究,发现凡地支为申、子、辰的年为公历闰年,二月为29天。在推算3月1日干支时,可按农历小月后的日干支推算方法,即在干同地干冲的基础上,干支各减一位,则为3月丨日干支。“余年二月二十八,干同干冲退二天。”除地干为申子辰年二月29天,其它年二月均为28天。在知道2月1日干支后,按干同支冲规律,干支各减二位便是3月1日的干支。“月首十三二十五,支同干隔一位算。”月首,代表每月第1日。其推法与农历日干干诀后两句相同。

五.实例:推算1998年农历6月初10日午时的干支。

⒈先按《农历大小月卦口诀》,将98年农历大小月,排上两卦,并标出闰月。同时,记住正月初一日和元旦日干支。

⒉推算1998年的干支。我们按《推算年干支口诀》在手掌上将地支子位定为甲子,为1984年,并将大拇指按在地支子位上。按“隔位逆推十年正”,大拇指从甲戌94年开始顺推,即94年为甲戌,95年为乙亥,96为丙子,97年为丁丑,98年干支则为戊寅。

⒊推算农历6月份干支。确定1998年戊寅干支以后,按《定月时干支诀》,戊干与癸干合以戊为主,戊的序数为5,将大拇指固定在戊位上。“年干隔位配寅月”,从戊位开始,将大拇指顺数,隔过天干,已,庚,辛,壬、癸五干到甲,便是98年正月的天干,即正月干支为甲寅,再从寅支开始,按甲,己,丙,丁,戊6月干支为己未。

⒋推算6月初10日(公历8月1日)干支。

⑴推算农历日干支。如前所述,98年大小月卦为《井》和《坎》。因为闰5月为29天,为阳爻,伏在《井》卦第5、6爻问,卦形为 =丨= 丨丨= 。

因为要推算的是农历98年正月初一日干支为己亥,先用大拇指在手掌亥支上定位,然后按《农历日干支推算诀》中的“大后干同地支冲,小后干支退一天”的规定,逐月推算初1日的干支。正月为大,干同支冲,大拇指跳到巳位上,2月初1日干支为已巳;干同支冲各减1,大拇指跳到亥位后,再减1位,3月初1日干支为甲戌;3月为小,干同支冲各减1大拇指跳到辰支后退1位,4月初1日为癸卯;4月为大,干同支冲,大姆指跳到酉干,5月初1日为癸酉;5月为小,干同支冲各减1,大拇指跳到卯支再退1位,闰5月 初1日为壬寅。闰5月为小,干同支冲各减1,大拇指跳到申支后再退一位,六月初一干支为辛未。知道6月初1日的干支后,从此位顺推初10曰的干支为庚辰。

⑵、推算公历8月1曰干支。

98年干支为戊寅,年支不属于申子辰,故98年2月为28天。按《曰公历干支推算口诀》中“小月干同地支冲,大月上句加一天------,余年二月二十八,干同支冲退两天”的规律,逐月推算。98年干支戊申,大拇指定在申位上。1月为大,干同支冲加一天,大拇指由申位到跳到寅,加1支到卯,2月1日为己卯,2月28天,干同干冲退二天,大拇指跳到酉位退二支,3月1日为丁未;3为大,干同支冲加1天大拇指跳到丑进一位4月1日干支为戊寅;4月为小,干同干冲,大拇指跳到申位,5月1日干支为戊申;5月为大,干同支冲加1天,大拇指跳到酉位,7月1日干支为己酉;7月为大,干同支冲加1天,大拇指跳到卯进1位到辰,8月1日干支为庚辰。

⒌推算农历6月初10(公历8月1日),该日干支为庚辰。我们按《定日时干支诀》知道,该日干庚与己相合,按“天干五合前为主”,以天干己来推算,己的序数为2,将大拇指定在天干己的位置上。“日干定时本身数”,大拇指从第二位到丙,可知庚辰日子时为丙子。将大拇指从丙子顺推到午年时,天干为壬,午时干支为壬午。

经过在掌上推算年、月、日、时干支,可知98年农历6月初10日(公历8月1日)午时干支,分别为戊寅年己未月庚辰日壬午时。

六、需要注意的几个问题。

⒈要在理解《冯氏掌上巧推年月日时干支法》的基础上,将巧记口诀和在掌上定位推算结合起来,并经常对照万年历进行推算,才可能达到熟练生巧,运用自如。

⒉再运用此法时,应先制定一种表格,并随身携带,供推算年干支时使用。

此表格如下:

年序号 本年大小月卦(闰) 立春月日时 正月初一日干支 元旦日干 支

1988 :丨:丨丨::丨::丨: 正月初八庚子日辰时 己亥 戊申

1999 丨丨:丨丨:丨:::丨: 腊月十九丁亥日未时 甲子 癸丑

在推算逐日干支时,一定要注意大小月,分清干同支冲和干同干支冲加减的区别。

掌上巧推年月日时干支法(附录)

一、 逐年推算元旦干支口诀

欲推来年元旦日,先知今年日干支。

申子辰支年为闰,干加六位支冲支。

余年天干加五位,干冲退一便可知。

推算方法:“欲推来年元旦日,先知今年日干支。”推算来年元旦日的干支,必须先知道今年元旦日的干支,并用大拇指在掌上定位。“申子辰干年为闰,干加六位支冲支。”凡年支临申子辰的为闰年,2月29天。推算下一年元旦日的干支,只要大拇指从今年元旦日支位,跳到相冲的地干支位上,而后天干顺加六位,便是来年元旦的干支。“余年天干加五位,干冲退一便可知。”除申子辰年外,其它年干2月均为28天。大拇指在掌上定好今年元旦日支位置,推算来年元旦干支时,将大拇指跳到相冲之支退一位,天干加上五位,即是来年元旦的干支。

二、逐年推算正月初一日干支口诀

欲推来年正一月,先知今年日干支。

常年退回小月数,闰月小数五六七。

小六干同天隔三,迂五前句各加一。

逢七支同天隔三,各退一位定无异。

推算方法:“欲推来年正一月,先知今年日干支。”推算来年正月初一日的干支,必须先知道今年正月初一的干支。“常年退回小月数,闰月小数五六七。”常年,指没有闰月的年份。推算农历正月初一干支,要按《农历大小月卦口诀》,逐年编上两卦,以便确定某年的小月数。如果今年没闰月,求来年正月初一日干支。经过研究,凡有闰月之年小月数分别为五、六、七三种。“小六干同天隔三,迂五前句各加一。”闰月之年,如果小月数为六,来年正月初一日干支,于前一年初一日干支则是地支相同,而天干则顺隔三位。小月数为五的,按干同天顺隔三后干支各进一位,便是来年正月初一日干支。“逢七支同天隔三,各退一位定无异。”闰月之年小月数为七的,在确定当年正月初一日干支后,推算下一年正月初一日干支,只要按支同天顺隔三位后,干支各减一位,便时来年正月初一日干支。

三、 用卦象推算公历各月第一日干支法

用卦象推算公历各月第一日的干支,主要是按公历大小月固定不便的实际,编上一个适用任何一年的卦象。然后按大小干支循环规律,进行推算各月第一日的干支。公历年大小月固定卦象,上半年是《未济》卦,下半年为《蹇》卦,其卦象如图三所示。在推算过程中,要特别注意二月,因为有28天和29天之分,所以在《未济》卦象的等二爻,标上闰年合非闰年字样,以便在推算时引起注意。在推算时,要将《公历曰干支推算口诀》做为依据,确定下月第一日干支,然后按“月首十三二十五,支同隔干一位算”,推算出所求之日干支。图三。

6月 丨 一曰干同地支冲+1 12月 = 一日干同支冲

5月 = 一日干同地支冲 11月 丨 一日干同支冲+1

4月 丨 一日干同地支冲+1 10月 = 一日干同支冲

3月 = 闰一日干同地支冲+1 09月 丨 一日干同支冲+1

2月 丨 闰年2月29天,非一日干同支冲—2 08月 = 一日干同支冲+1

非闰年2月28天,一日干同支冲+1

1月 = 元旦日干支 07月 = 一日干同支冲

四、 用卦象推算农历各月初一日干支法

农历大小月,其天数固定不变,即大月30天,小月29天。但是,由于大小月的排列不规则,因此要按《农历大小月卦口诀》先编上本年的上下半年的月卦。然后依据两个卦象,参考《农历日干支推算口诀》,在知道正月初一的日干支后,按“大后干同地支冲,小后干支退一天‘的规律,运用卦象来推算农历各月初一日的干支。经研究发现,农历相邻两月大小月的排列,共有四种类型,其推算逐月初一干支法如下:

⑴ 两小月相邻同支冲 ⑵ 两大

— 下月干同支冲—1 = 下月干

— 本月初一日干 = 本月初一日干支

⑶大小月相邻 ⑷ 大小月相邻

— 下月干同支冲 = 下月干同支冲—1

= 本月初一日干支 — 本月初一日

△ 实例:推算2001年各月初一干支

⒈按《农历大小月卦口诀》,先将2001年编上月卦。上半年为“艮”卦,下半年为“既济”卦。

⒉2001年正月初一日干支为丁亥。

⒊推算时,要将1、2月,3、4月等相邻两月,与四种排列类型对照,然后按相同类型进行推算。

⒋根据卦象,逐月进行推算。

6月“ — ”干同支冲己酉 12月“ = ” 干同支冲—1辛巳

5月“ — ”干同支冲—1己卯 11月“ — ” 干同支冲壬子

闰4月“ — ”干同支冲丙戌 10月“ = ” 干同支—1壬午

4月“ — ” 干同支冲—1丙辰 9月“ — ” 干同支冲葵丑

3月“ — ” 干同支冲丁亥 8月“ = ” 干同支冲—1癸末

2月“ — ” 干同支冲丁巳 7月“ — ” 干同支冲—1甲寅

1月“ — ” 正月初一丁亥

经过逐卦推算农历12月初一为辛巳。

这是网上的例子,你仔细看看

using System;

using SystemData;

using SystemConfiguration;

using SystemWeb;

using SystemWebSecurity;

using SystemWebUI;

using SystemWebUIWebControls;

using SystemWebUIWebControlsWebParts;

using SystemWebUIHtmlControls;

using System;

using SystemCollectionsGeneric;

using SystemText;

using SystemGlobalization;

/// <summary>

/// chinaDate 的摘要说明

/// </summary>

public class chinaDate

{

public string cDate()

{

ChineseLunisolarCalendar l = new ChineseLunisolarCalendar();

DateTime dt = DateTimeToday; //转换当日的日期

//dt = new DateTime(2006, 1,29);//农历2006年大年初一(测试用),也可指定日期转换

string[] aMonth ={"","正月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "腊月", "腊月" };

//a10表示日期的十位!

string[] a10 ={ "初", "十", "廿", "卅" };

string[] aDigi ={ "O", "一", "二", "三", "四", "五", "六", "七", "八", "九" };

string sYear = "", sYearArab = "", sMonth = "", sDay = "", sDay10 = "", sDay1 = "", sLuniSolarDate = "";

int iYear, iMonth, iDay;

iYear = lGetYear(dt);

iMonth = lGetMonth(dt);

iDay = lGetDayOfMonth(dt);

//Format Year

sYearArab = iYearToString();

for (int i = 0; i < sYearArabLength; i++)

{

sYear += aDigi[ConvertToInt16(sYearArabSubstring(i, 1))];

}

//Format Month

int iLeapMonth = lGetLeapMonth(iYear); //获取闰月

if (iLeapMonth > 0 && iMonth<=iLeapMonth)

{

//for (int i = iLeapMonth + 1; i < 13; i++) aMonth[i] = aMonth[i - 1];

aMonth[iLeapMonth] = "闰" + aMonth[iLeapMonth-1];

sMonth = aMonth[lGetMonth(dt)];

}

else if (iLeapMonth > 0 && iMonth > iLeapMonth)

{

sMonth = aMonth[lGetMonth(dt) - 1];

}

else

{

sMonth = aMonth[lGetMonth(dt)];

}

//Format Day

sDay10 = a10[iDay / 10];

sDay1 = aDigi[(iDay % 10)];

sDay = sDay10 + sDay1;

if (iDay == 10) sDay = "初十";

if (iDay == 20) sDay = "二十";

if (iDay == 30) sDay = "三十";

//Format Lunar Date

//sLuniSolarDate = dtYear+"年"+dtMonth+"月"+dtDay+"日 "+Weeks(dtDayOfWeekToString())+" 农历" + sYear + "年" + sMonth + sDay;

sLuniSolarDate =" 农历" + sMonth + sDay;

return sLuniSolarDate;

}

private string Weeks(string Weeken)

{

switch (Weeken)

{

case "Monday":

return "星期一";

break;

case "Tuesday":

return "星期二";

break;

case "Wednesday":

return "星期三";

break;

case "Thursday":

return "星期四";

break;

case "Friday":

return "星期五";

break;

case "Saturday":

return "星期六";

break;

case "Sunday":

return "星期日";

break;

default:

return " ";

}

}

}

二、第二步

chinaDate s = new chinaDate();

Label1Text = DateTimeNowToShortDateString() + " " + CaculateWeekDay(DateTimeNowDayOfWeekToString()) + " " + scDate();

三、第三步

#region 得到今天是星期几

protected string CaculateWeekDay(string week)

{

string weekstr = "";

switch (week)

{

case "Monday": weekstr = "星期一"; break;

case "Tuesday": weekstr = "星期二"; break;

case "Wednesday": weekstr = "星期三"; break;

case "Thursday": weekstr = "星期四"; break;

case "Friday": weekstr = "星期五"; break;

case "Saturday": weekstr = "星期六"; break;

case "Sunday": weekstr = "星期日"; break;

}

return weekstr;

}

#endregion

int weekDay = javautilCalendargetInstance()get(javautilCalendarDAY_OF_WEEK);

这个得出的是一个星期的第几天。

以上就是关于阴历和阳历生日转换器,阳历生日转换阴历生日全部的内容,包括:阴历和阳历生日转换器,阳历生日转换阴历生日、怎样计算阴历的日期、C# 中 怎样获得当前星期以及农历时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9505383.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存