首页JavaBee 正文

java获取时间00:00:00和23:59:59

时间: 2022年9月26日 浏览 74

null

/**
* 获取今天开始时间00:00:00
* @return
*/
public static Date todayStart(Date date){
Calendar start = Calendar.getInstance();
start.setTime(date);
start.set( Calendar.HOUR_OF_DAY,0);
start.set( Calendar.MINUTE, 0);
start.set( Calendar.SECOND,0);
start.set( Calendar.MILLISECOND,0);
return start.getTime();
}

/**
* 获取今天增加天数后的结束时间23:59:59
* @return
*/
public static Date addDayEnd(int day){
Date date=todayStart(new Date());
return DateUtils.addMilliseconds(DateUtils.addDays(date,day),-1000);
}

/**
* 获取本月一号的00:00:00
* @return
*/
public static Date monthStart(Date date){
Calendar start = Calendar.getInstance();
start.setTime(date);
start.set(Calendar.DAY_OF_MONTH, 1);
start.set( Calendar.HOUR_OF_DAY,0);
start.set( Calendar.MINUTE, 0);
start.set( Calendar.SECOND,0);
start.set( Calendar.MILLISECOND,0);
return start.getTime();
}

/**
* 获取本月结束时间
* @return
*/
public static Date monthEnd(Date date){
Date result=monthStart(date);
return DateUtils.addMilliseconds(DateUtils.addMonths(result,1),-1000);
}

/**
* 获取星期一的00:00:00
* @return
*/
public static Date weekStart(Date date){
Calendar start = Calendar.getInstance();
start.setTime(date);
if(start.get(Calendar.DAY_OF_WEEK)==1){
start.add(Calendar.DAY_OF_MONTH, -1);
}
start.set(Calendar.DAY_OF_WEEK, 2);
start.set( Calendar.HOUR_OF_DAY,0);
start.set( Calendar.MINUTE, 0);
start.set( Calendar.SECOND,0);
start.set( Calendar.MILLISECOND,0);
return start.getTime();
}

/**
* 获取时间月份
* @return
*/
public static int getMonth(Date date){
Calendar start = Calendar.getInstance();
start.setTime(date);

return start.get(Calendar.MONTH) + 1;
}

/**
* 获取时间小时是否在范围内
* @return
*/
public static boolean getIfHour(Date date,int startHour,int endHour){
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
int hour=calendar.get(Calendar.HOUR_OF_DAY);
boolean bool=false;
if(hour>=startHour && hour<endHour){
bool=true;
}
return bool;
}


/**
* Todo 计算某个时间,加或者减时间
* @param fromTime yyyy-MM-dd HH:mm:ss
* @param overTime MINUTE
* @return overQTimeKey yyyyMMddHHmmssSSSSSS
*/
static String CalTimeDifference(String fromTime, int overTime) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = null;
try {
date = dateFormat.parse(fromTime);
} catch (ParseException e) {
e.printStackTrace();
}
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
calendar.add(Calendar.MINUTE, overTime);//这里是分钟,如果需要,可以更换为day,moth
Date date1 = calendar.getTime();
System.out.println(dateFormat.format(date1));
Timestamp overQTimeKey = new Timestamp(calendar.getTime().getTime());
SimpleDateFormat overQTimeDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSSSSS");
return overQTimeDateFormat.format(overQTimeKey);
}