时间格式的转换:时间戳与特定格式时间的转换
import cn.hutool.core.date.DateUtil;
import java.time.LocalDate;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class DateHelper {
/**
* @param dateStr yyyy-MM-dd
* @return
*/
public static Integer getStartDay(String dateStr) {
Date date = DateUtil.parse(dateStr);
long timeStamp = DateUtil.beginOfDay(date).getTime();
int time = (int) (timeStamp / 1000);
return time;
}
/**
* @param dateStr yyyy-MM-dd
* @return
*/
public static Integer getEndDay(String dateStr) {
Date date = DateUtil.parse(dateStr);
long timeStamp = DateUtil.endOfDay(date).getTime();
int time = (int) (timeStamp / 1000);
return time;
}
public static String getDateByIngter(Integer dateTime) {
if (dateTime == null || dateTime <= 0) {
return "";
}
Date date = new Date(dateTime.longValue() * 1000);
return DateUtil.format(date, "yyyy-MM-dd HH:mm:ss");
}
public static Integer getDateTimeStamp() {
long timeStamp = DateUtil.date().getTime();
int time = (int) (timeStamp / 1000);
return time;
}
public static Integer getDateTimeStampByDate(Date date) {
long timeStamp = date.getTime();
int time = (int) (timeStamp / 1000);
return time;
}
public static String getDateFormat(Date date) {
return DateUtil.format(date, "yyyy-MM-dd HH:mm:ss");
}
public static Date getStartDate(String dateStr) {
Date date = DateUtil.parse(dateStr);
return DateUtil.beginOfDay(date);
}
public static Date getEndDate(String dateStr) {
Date date = DateUtil.parse(dateStr);
return DateUtil.endOfDay(date);
}
/**
* 获取次月第一天
* @return
*/
public static Integer getFirstDayOfNextMonth() {
Date date = DateUtil.nextMonth();
long timeStamp = DateUtil.beginOfMonth(date).getTime();
int time = (int) (timeStamp / 1000);
return time;
}
//获取当月第一天
public static String getFirstDayOfMonth() {
Date date = DateUtil.beginOfMonth(new Date());
return DateUtil.format(date, "yyyy-MM-dd");
}
//获取当月最后一天
public static String getLastDayOfMonth() {
Date date = DateUtil.endOfMonth(new Date());
return DateUtil.format(date, "yyyy-MM-dd");
}
//获取指定月份的第一天
public static String getFirstDayOfMonth(Date date) {
Date tmp = DateUtil.beginOfMonth(date);
return DateUtil.format(tmp, "yyyy-MM-dd");
}
//获取指定月份的最后一天
public static String getLastDayOfMonth(Date date) {
Date tmp = DateUtil.endOfMonth(date);
return DateUtil.format(tmp, "yyyy-MM-dd");
}
//获取当前时间的下个月
public static String getNextMonth(Long nowTime) {
if (nowTime == null || nowTime <= 0) {
return "";
}
String dataTime = DateUtil.format(new Date(nowTime), "yyyy-MM-dd");
//时间字符串转 LocalDate 类型
LocalDate today = LocalDate.parse(dataTime);
//当前月份+(-1)
today = today.minusMonths(-1);
//LocalDate日期格式是"YYYY-MM-DD",只需要用toString()就可以转化成字符串类型
return today.toString();
}
//获取指定时间的下一年
public static Long getNextYear(Long nowTime) {
Calendar calendar = new GregorianCalendar();
Date date = new Date(nowTime) ;
calendar.setTime(date);
calendar.add(Calendar.YEAR, 1);
return calendar.getTime().getTime();
}
}