直接上代码,关于方法的作用,在注释上都有,如果不清楚,测试打印一下即可。
package com.yonyoufutong.utils;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* 时间工具类
* @author 彭于晏
*/
public class DateUtils {
/**
* 获取当前时间前一天开始的时间
* @return
*/
public static String getStartTime() {
Calendar zero = Calendar.getInstance();
zero.add(Calendar.DATE, -1);
zero.set(zero.get(Calendar.YEAR), zero.get(Calendar.MONTH), zero.get(Calendar.DATE), 0, 0, 0);
SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return dft.format(zero.getTime());
}
/**
* 获取当前时间前一天结束的时间
* @return
*/
public static String getEndTime() {
Calendar zero = Calendar.getInstance();
zero.add(Calendar.DATE, -1);
zero.set(zero.get(Calendar.YEAR), zero.get(Calendar.MONTH), zero.get(Calendar.DATE), 0, 0, 0);
zero.set(Calendar.HOUR_OF_DAY,23);
zero.set(Calendar.MINUTE,59);
zero.set(Calendar.SECOND,59);
SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return dft.format(zero.getTime());
}
/**
* 当前日期的前一天
* @return
*/
public static String getPreviousDay(){
Calendar dNow = Calendar.getInstance();
dNow.add(Calendar.DATE, -1);
SimpleDateFormat dft=new SimpleDateFormat("yyyy-MM-dd");
return dft.format(dNow.getTime());
}
/**
* 当前日期的前两天
* @return
*/
public static String getTwoDay(){
Calendar dNow = Calendar.getInstance();
dNow.add(Calendar.DATE, -2);
SimpleDateFormat dft=new SimpleDateFormat("yyyy-MM-dd");
return dft.format(dNow.getTime());
}
public static String getStartDate() {
Calendar todayStart = Calendar.getInstance();
todayStart.set(Calendar.SECOND, 0);
todayStart.set(Calendar.MILLISECOND, 0);
SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return dft.format(todayStart.getTime());
}
public static String getEndDate() {
Calendar todayEnd = Calendar.getInstance();
todayEnd.add(Calendar.MINUTE, -10);
todayEnd.set(Calendar.SECOND, 0);
todayEnd.set(Calendar.MILLISECOND, 0);
SimpleDateFormat dft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return dft.format(todayEnd.getTime());
}
/**
* 返回时间格式如:2020-02-17 00:00:00
* @param time
* @return
*/
public static String getStartOfTime(Date time) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(time);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime());
}
/**
* 返回时间格式如:2020-02-19 23:59:59
* @param time
* @return
*/
public static String getEndOfTime(Date time) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(time);
calendar.set(Calendar.HOUR_OF_DAY, 23);
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 59);
calendar.set(Calendar.MILLISECOND, 999);
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime());
}
/**
* 返回时间格式如:2020-02-17
* @param time
* @return
*/
public static String getStartOfData(Date time) {
Calendar calendar = Calendar.getInstance();
calendar.setTime(time);
return new SimpleDateFormat("yyyy-MM-dd").format(calendar.getTime());
}
}