/*******************************************************************************
* Copyright 2008 Mjrz.net
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
******************************************************************************/
/**
* @author Mjrz [email protected]
*
*/ public class DateUtils { public static final String FORMAT_YYYYMMDD = "yyyy-MM-dd"; public static final String FORMAT_YYYYMMDD_SLASHES = "yyyy/MM/dd"; public static final String GENERIC_DISPLAY_FORMAT = "E, dd MMM yyyy"; public static final String TIME_DISPLAY_FORMAT = "HH mm ss"; public static final int LAST_WEEK = 1; public static final int LAST_MONTH = 2;
public static final String formatDate(Date dt, String format) {
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(dt);
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(format);
sdf.setTimeZone(TimeZone.getDefault()); return (sdf.format(cal.getTime()));
}
public static final String getCurrentDate(String format) {
Calendar cal = Calendar.getInstance(TimeZone.getDefault());
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(format);
sdf.setTimeZone(TimeZone.getDefault()); return (sdf.format(cal.getTime()));
}
public static final String dateToString(Date dt, String dateformat) {
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(dt);
public static final String dateToString(Date dt, String tzString, String dateformat) {
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(dt);
cal.setTimeZone(TimeZone.getTimeZone(tzString));
public static final String calendarToString(Calendar cal, String dateformat) {
StringBuffer ret = new StringBuffer(); if(dateformat.equals(FORMAT_YYYYMMDD) ) {
ret.append(cal.get(Calendar.YEAR));
ret.append("-");
String month = null; int mo = cal.get(Calendar.MONTH) + 1; /* Calendar month is zero indexed, string months are not */ if(mo < 10) {
month = "0" + mo;
} else {
month = "" + mo;
}
ret.append(month);
ret.append("-");
String date = null; int dt = cal.get(Calendar.DATE); if(dt < 10) {
date = "0" + dt;
} else {
date = "" + dt;
}
ret.append(date);
}
return ret.toString();
}
public static final GregorianCalendar getCurrentCalendar(String utimezonestring) { try {
GregorianCalendar gc = new GregorianCalendar();
gc.setTimeZone(TimeZone.getTimeZone(utimezonestring)); return gc;
} catch(Exception e) {
//If exception, return server TimeStamp return new GregorianCalendar();
}
}
public static String[] getDateRange(int cmd) {
GregorianCalendar gc = new GregorianCalendar();
GregorianCalendar gc2 = new GregorianCalendar();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); //$NON-NLS-1$
String ret[] = new String[2];
ret[1] = sdf.format(gc.getTime());
if(cmd == LAST_WEEK) { for(int i = 0; i < 7; i++) {
gc2.add(Calendar.DATE, -1);
}
public static final String getDayString(int day) { switch (day) { case Calendar.SUNDAY: return "SUNDAY"; case Calendar.MONDAY: return "MONDAY"; case Calendar.TUESDAY: return "TUESDAY"; case Calendar.WEDNESDAY: return "WEDNESDAY"; case Calendar.THURSDAY: return "THURSDAY"; case Calendar.FRIDAY: return "FRIDAY"; case Calendar.SATURDAY: return "SATURDAY";
} return "";
}
}