Have a look at:

http://www.netaxs.com/~kckress/javagroup/datecalc/datecalc4.html
and
http://www.javaworld.com/javaworld/jw-03-2001/jw-0330-time.html

Dave