Tuesday, May 13, 2008

Java Date() Helper

/**
* @author Uki D. Lucas
* June 19, 2007 - Created.
*/
package com.ucc.csd.server.common;

import java.text.DateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Locale;

public class DateHelper
{
public static final int MILISECONDS_IN_ONE_HOUR = 3600000;

public static Date build(int year, int month, int day)
{
GregorianCalendar calendar = new GregorianCalendar();
calendar.set(year, month - 1, day);
return calendar.getTime();
}

public static boolean compareDates(Date startDt, Date endDate)
{
if (endDate.after(startDt))
return true;
return false;
}

public static Date incrementDays(Date date, int days)
{
GregorianCalendar calendar = new GregorianCalendar();
calendar.setTime(date);

int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DAY_OF_MONTH) + days;
System.out.println("year: " + year);
System.out.println("month: " + month);
System.out.println("day: " + day);
return DateHelper.build(year, month, day);
}

public static String convertToLocalized(Date date, String countryCode, String languageCode, int format)
{
Locale locale = new Locale(languageCode, countryCode);
DateFormat df = DateFormat.getDateInstance(format, locale);
return df.format(date);
}

/**
* returns string eg. 27-Jul-2006
*
* @author Uki D. Lucas
*/
public static String convertToOracle(Date date)
{
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("dd-MMM-yyyy");
return sdf.format(date);
}

/** outputs format: 5/14/08 */
public static String convertToShortLocalizedUSA(Date date)
{
String countryCode = "US";
String languageCode = "en";
int format = DateFormat.SHORT;
return convertToLocalized(date, countryCode, languageCode, format);
}

/**
* returns string eg. 20070321
*
* @author Uki D. Lucas
*/
public static String convertToyyyyMMdd(Date date)
{
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyyMMdd");
return sdf.format(date);
}

/**
* returns string eg. 2007
* @author Uki D. Lucas
*/
public static String getJulian(Date date)
{
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("DDD");
return sdf.format(date);
}

/**
* returns string eg. 2007
* @author Uki D. Lucas
*/
public static String getYear(Date date)
{
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy");
return sdf.format(date);
}

}