public class DateUtil {
public static final FastDateFormat FORMAT_yyyyMMddHHmmss=FastDateFormat.getInstance("yyyy-MM-dd HH:mm:ss");
public static final FastDateFormat FORMAT_yyyyMMdd=FastDateFormat.getInstance("yyyy-MM-dd");
public static final FastDateFormat FORMAT_yyMMdd=FastDateFormat.getInstance("yy-MM-dd");
public static final FastDateFormat FORMAT_HHmmss=FastDateFormat.getInstance("HH:mm:ss");
/**
* 最常用的格式化10位时间戳为yyyyMMddHHmmss
* @return
*/
public static String getNormalTime(String timestamp){
return FORMAT_yyyyMMddHHmmss.format(getDate(timestamp));
}
/**
* 获得10位时间戳
* @param date
* @return
*/
public static String getTimestamp(Date date){
return String.valueOf(date.getTime()/1000);
}
/**
* 10位时间戳转日期
* @param timestamp
* @return
*/
public static Date getDate(String timestamp){
return new Date(Long.valueOf(timestamp+"000"));
}
/**
* 获得本周开始时间
* @return
*/
public static Date getStartOfThisWeek() {
Calendar calendar=Calendar.getInstance();
calendar.setTime(new Date());
calendar.setFirstDayOfWeek(Calendar.MONDAY);;
calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND,0);
return calendar.getTime();
}
public static void main(String[] args) {
getStartOfThisWeek();
}
/**
* 获得本周开始时间
* @return
*/
public static String getStartOfThisWeekString() {
return String.valueOf(getStartOfThisWeek().getTime()/1000);
}
/**
* 获得本月开始时间
* @return
*/
public static Date getStartOfThisMonth() {
Calendar calendar=Calendar.getInstance();
calendar.setTime(new Date());
calendar.set(Calendar.DAY_OF_MONTH, 1);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
return calendar.getTime();
}
/**
* 获得本月开始时间
* @return
*/
public static String getStartOfThisMonthString() {
return String.valueOf(getStartOfThisMonth().getTime()/1000);
}
}