BigDate allows you to manipulate dates without considering time or timezone. Interconvertible with Sun Date and GregorianCalendar. Lets you calculate such things as the third Thursday of the month, iso week numbers and astronomical day numbers. Source included, which you can canibalise for you own programs. Written in pure Java, source incuded.