import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/*
*@author leixingbang_sx
*Mail:leixingbang_sx@qiyi.com
*@create 2015/12/23 9:59
*desc 日期工具
*/
public class DateUtils {
/**
* 短格式日期格式化
*/
private static final SimpleDateFormat SHORT_YEAR_FORMATOR = new SimpleDateFormat("yy-MM-dd");
/**
* 标准日期格式化
*/
private static final SimpleDateFormat CUSTOM_DAY_FORMATOR = new SimpleDateFormat("yyyy-MM-dd");
/**
* 标准日期时间格式化
*/
private static final SimpleDateFormat CUSTOM_DAYTIME_FORMATOR = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
/**
* 获得指定日期的前一天
*
* @param specifiedDay 指定日期
* @return 前一天
*/
public static Date getSpecifiedDayBefore(String specifiedDay) {
return getDate(specifiedDay, -1);
}
/**
* 获得指定日期的后一天
*
* @param specifiedDay 指定日期
* @return 后一天
*/
public static Date getSpecifiedDayAfter(String specifiedDay) {
return getDate(specifiedDay, 1);
}
private static Date getDate(String specifiedDay, int diffDays) {
Calendar c = Calendar.getInstance();
try {
c.setTime(SHORT_YEAR_FORMATOR.parse(specifiedDay));
c.set(Calendar.DATE, c.get(Calendar.DATE) + diffDays);
return CUSTOM_DAY_FORMATOR.parse(CUSTOM_DAY_FORMATOR.format(c.getTime()));
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
/**
* 将string类型的日期转化为date类型 例如输出"2014-12-23" 则转化为对应Date为"2014-12-23 00:00:00"
* @param specifiedDay 指定String类型的日期
* @return 日期
*/
public static Date parseDayStrToDate(String specifiedDay)
{
try {
return CUSTOM_DAY_FORMATOR.parse(specifiedDay);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
/**
* 将指定的日期转化为String类型
* @param date 日期
* @return 格式化后字符串
*/
public static String parseDateToStr(Date date) {
return CUSTOM_DAYTIME_FORMATOR.format(date);
}
public static void main(String[] args) {
}
}