?? vacdateutil.java
字號:
package com.air.util;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
/**
* @author Jelly Yang, create on Nov 19, 2008
*
* VacDateUtil
*/
public final class VacDateUtil
{
private final DateFormat formater;
private final DateFormat dbformater;
/**
* private constructor of VacDateUtil, prevent instantiation
*/
private VacDateUtil()
{
formater= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
formater.setLenient(true);
dbformater= new SimpleDateFormat("MM/dd/yyyy");
dbformater.setLenient(true);
}
private static class VacDateUtilHolder
{
static final VacDateUtil vacDateUtil = new VacDateUtil();
}
/**
* @return an instance of VacDateUtil
*/
public static VacDateUtil getInstance()
{
return VacDateUtilHolder.vacDateUtil;
}
public Date convertFromString( String datestr )
{
Date date = null;
try
{
TimeZone tz = TimeZone.getDefault();
formater.setTimeZone(tz);
date = formater.parse(datestr);
}
catch( Exception ex )
{
}
return date;
}
public Date convertFormStrDate( String datestr )
{
Date date = null;
try
{
TimeZone tz = TimeZone.getDefault();
dbformater.setTimeZone(tz);
date = dbformater.parse(datestr);
}
catch( Exception ex )
{
}
return date;
}
public String convertFromDate( Date date )
{
return dbformater.format(date);
}
public int calcUseddays( Date startdate, Date enddate )
{
int useddays = 0;
try
{
long diff = enddate.getTime() - startdate.getTime();
useddays = ( int )( diff/(24L*60L*60L*1000L));
DateFormat formater = new SimpleDateFormat("zz");
String startdatestr = (formater.format(startdate)).trim();
String enddatestr = (formater.format(enddate)).trim();
if( !( startdatestr.equalsIgnoreCase(enddatestr)))
{
if(("EST").equalsIgnoreCase(startdatestr))
{
useddays = useddays + 1;
}
}
useddays = useddays + 1;
}
catch( Exception ex )
{
}
return useddays;
}
public double calcdiffdays( Date startdate, Date enddate )
{
int diffdays = calcUseddays( startdate, enddate );
Double doubleobj = new Double(diffdays);
return doubleobj.doubleValue();
}
public boolean isInDateRange( Date startdate, Date enddate, Date verifydate )
{
boolean flag = false;
if( ( ( verifydate.after( startdate) ) || (verifydate.equals(startdate)) ) && ( ( verifydate.before( enddate) ) || (verifydate.equals(enddate)) ) )
{
flag = true;
}
return flag;
}
public boolean isAfterNow( Date date )
{
return date.after(getToday());
}
public boolean isBeforeNow( Date date )
{
return date.before(getToday());
}
public boolean isEqualNow( Date date )
{
return date.equals(getToday());
}
public Date getToday()
{
Calendar calnow = Calendar.getInstance();
calnow.set( Calendar.HOUR,0);
calnow.set( Calendar.MINUTE,0);
calnow.set( Calendar.SECOND,0);
calnow.set( Calendar.MILLISECOND,0);
Date today = calnow.getTime();
return today;
}
public int getCurrentYear()
{
Calendar calnow = Calendar.getInstance();
int currentyear = calnow.get( Calendar.YEAR);
return currentyear;
}
public String dbString( Date date)
{
String datestr = convertFromDate(date);
return "to_date('" + datestr + "', 'mm/dd/yyyy')";
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -