時間格式的轉換:時間戳與特定格式時間的轉換
阿新 • • 發佈:2022-05-09
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(); } }