CIS 35A: Introduction to Java Programming

Home | Green Sheet | Lectures | Assignments | FAQ | Grades

Dates

Dates and Strings
Dates and times
DateUtils

A DateUtils class that provides methods for handling dates

import java.util.*;
public class DateUtils
{
    static final int MILLS_IN_DAY = 24 * 60 * 60 * 1000;

    public static Date getCurrentDate()
    {
        GregorianCalendar currentDate = new GregorianCalendar();
        currentDate.set(Calendar.HOUR, 0);
        currentDate.set(Calendar.MINUTE, 0);
        currentDate.set(Calendar.SECOND, 0);
        return currentDate.getTime();
    }

    public static Date createDate(int year, int month, int day)
    {
        GregorianCalendar date = new GregorianCalendar(year,
            month, day);
        return date.getTime();
    }

    public static Date stripTime(Date date)
    {
        GregorianCalendar currentDate = new GregorianCalendar();
        currentDate.setTime(date);
        currentDate.set(Calendar.HOUR, 0);
        currentDate.set(Calendar.MINUTE, 0);
        currentDate.set(Calendar.SECOND, 0);
        return currentDate.getTime();
    }

    public static int daysDiff(Date date1, Date date2)
    {
        date1 = stripTime(date1);
        date2 = stripTime(date2);
        long longDate1 = date1.getTime();
        long longDate2 = date2.getTime();
        long longDiff = longDate2 - longDate1;
        return (int) (longDiff / MILLS_IN_DAY);
    }
}

Code that uses some of the DateUtils methods

import java.util.*;
import java.text.*;	// for DateFormat

public class TestDateUtils
{

	public static void main(String[] args)
	{
		GregorianCalendar currentGC = new GregorianCalendar();
		int currentYear = currentGC.get(Calendar.YEAR);
		Date currentDate = DateUtils.getCurrentDate();
		Date christmas = DateUtils.createDate(currentYear, Calendar.DECEMBER, 25);
		int daysToChristmas = DateUtils.daysDiff(currentDate, christmas);
		DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.LONG);
		String formattedDate = dateFormat.format(currentDate);
		System.out.println("Today is " + formattedDate);
		System.out.println("There are " + daysToChristmas + " days until Christmas.");
	}
}

Previous | GregorianCalendar | Calendar | Date | DateFormat | DateUtils | Invoice | Next