Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Julian-to-Gregorian data rtn?

1 view
Skip to first unread message

Bob Augestad

unread,
Dec 16, 1996, 3:00:00 AM12/16/96
to

Has anyone seen a routine to convert Julian dates (e.g. 96325) to
Gregorian Date (mm/dd/yy)? If not, any suggestions for a relatively new
VB programmer as to how to code such a routine?

Any help would be VERY much appreciated!

Bob

Albert B. Collver, III

unread,
Dec 17, 1996, 3:00:00 AM12/17/96
to

Bob,
The numbers (96325, etc.) are actually called Julian Day Numbers. A Julian Date is something different. Anyway, here are a couple of algorithms that may help you.
BTW: My calendar program (listed below) converts Julian Day Numbers to Gregorian and vice/versa as well as other calendar types. You may want to check it out.
Sincerely,
Al Collver

Notation:
JD = Julian Day Number
Y = Calendar Year
M = Month
D = Day of Month

Converting between Gregorian Calendar Date and Julian Day Number

Given: Y, M, D. Compute: JD

JD = (1461*(Y+4800+(M-14)/12))/4+(367*(M-2-12*((M-14).12)))/12-(3*((Y+4900+(M-14)/12)/100)/4+D-32075

Given: JD. Compute Y, M, D

L=JD+68569
N=(4*L)/146097
L=L-(146097*N+3)/4
I=(4000*(L+1))/1461001
L=L-(1461*I)/4+31
J=(80*L)/2447
D=L-(2447*J)/80
L=J/11
M=J+2-12*L
Y=100*(N-49)+I+L


--
Albert B. Collver, III
ClubWin Member
Col...@MSN.COM
See Calendar Explorer at
http://ourworld.compuserve.com/homepages/Collver_Home_Page/calendar.htm



Bob Augestad <bob...@concentric.net> wrote in article <32B605...@concentric.net>...

Jim Mack

unread,
Dec 19, 1996, 3:00:00 AM12/19/96
to

Bob Augestad wrote in article <32B605...@concentric.net>...


> Has anyone seen a routine to convert Julian dates (e.g. 96325) to
> Gregorian Date (mm/dd/yy)?

The VB code Albert supplied should get you going, but you might want to
look at the 32-bit version of MicroHelp Muscle (which I wrote, so excuse my
bias) which has fast assembler routines to do the conversion to and from
Julian day numbers and VB dates. The routines handle a variety of formats,
including the YYDDD format you asked about.

-- Jim

0 new messages