From 8a6375edade9f1edc194a0381369fe94e56c13c7 Mon Sep 17 00:00:00 2001 From: tangxiaobao <303826152@qq.com> Date: 星期五, 13 八月 2021 13:16:36 +0800 Subject: [PATCH] Merge branch 'txb' --- springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java | 125 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 122 insertions(+), 3 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java index 87c7c57..c4b3648 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/utlis/DateUtils.java @@ -32,6 +32,8 @@ public static SimpleDateFormat ymdhms_format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + public static SimpleDateFormat ymdhm_format = new SimpleDateFormat("yyyy-MM-dd HH:mm"); + public static DateTimeFormatter format_ymd_String = DateTimeFormatter.ofPattern("yyMMdd"); public static SimpleDateFormat yyyyMM_format = new SimpleDateFormat("yyyy-MM"); @@ -126,6 +128,13 @@ return now; } + /** + * 返回当前事件的时间戳 + * @return + */ + public static Long getCurrentDateTimeStamp(){ + return LocalDateTime.now().toInstant(ZoneOffset.of("+8")).toEpochMilli(); + } /** * 获取当前时间字符串,格式为yyyy-MM-dd HH:mm:ss * @return @@ -744,15 +753,125 @@ return date1.before(date2); } + /** + * date2比date1多的天数 + * @param date1 + * @param date2 + * @return + */ + public static int differentDays(Date date1,Date date2) + { + Calendar cal1 = Calendar.getInstance(); + cal1.setTime(date1); + + Calendar cal2 = Calendar.getInstance(); + cal2.setTime(date2); + int day1= cal1.get(Calendar.DAY_OF_YEAR); + int day2 = cal2.get(Calendar.DAY_OF_YEAR); + + int year1 = cal1.get(Calendar.YEAR); + int year2 = cal2.get(Calendar.YEAR); + if(year1 != year2) //同一年 + { + int timeDistance = 0 ; + for(int i = year1 ; i < year2 ; i ++) + { + if(i%4==0 && i%100!=0 || i%400==0) //闰年 + { + timeDistance += 366; + } + else //不是闰年 + { + timeDistance += 365; + } + } + + return timeDistance + (day2-day1) ; + } + else //不同年 + { +// System.out.println("判断day2 - day1 : " + (day2-day1)); + return day2-day1; + } + } + + /** + * 获取当前月第一天 + * @return + */ + public static String getFirstDayOfMonthString() { + Calendar calendar = Calendar.getInstance(); + + calendar.add(Calendar.MONTH, 0); + + calendar.set(Calendar.DAY_OF_MONTH, 1); + // 格式化日期 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + return sdf.format(calendar.getTime())+" 00:00:00"; + } + + /** + * 获取当前月最后一天 + * @return + */ + public static String getLastDayOfMonthString() { + Calendar calendar = Calendar.getInstance(); + + calendar.add(Calendar.MONTH, 1); + + calendar.set(Calendar.DAY_OF_MONTH, 0); + // 格式化日期 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + return sdf.format(calendar.getTime())+" 23:59:59"; + } + + /** + * 获取当前时间(年月日) + * @return + */ + public static String getDayOfMonthString() { + Calendar today = Calendar.getInstance(); + today.set(Calendar.HOUR, 0); + today.set(Calendar.MINUTE, 0); + today.set(Calendar.SECOND, 0); + today.set(Calendar.MILLISECOND, 0); + // 格式化日期 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + return sdf.format(today.getTime()); + } + + /** + * 日期转周 + * + * @param datetime + * @return + */ + public static String dateToWeek(String datetime) { + SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd"); + String[] weekDays = { "周日", "周一", "周二", "周三", "周四", "周五", "周六" }; + Calendar cal = Calendar.getInstance(); // 获得一个日历 + Date datet = null; + try { + if (StringUtils.isNotEmpty(datetime)) { + datet = f.parse(datetime); + cal.setTime(datet); + } + } catch (ParseException e) { + e.printStackTrace(); + } + int w = cal.get(Calendar.DAY_OF_WEEK) - 1; // 指示一个周中的某天。 + if (w < 0) + w = 0; + return weekDays[w]; + } public static void main(String[]args)throws Exception{ - isValidDate("2020/12/4"); // Date date= new Date(); // Date after = new Date(); -// System.out.println(calTimeDifference(date,after)); - System.out.println(getYearMonthStart(2021,2)); +// System.out.println(getFirstDayOfMonthString()); +// System.out.println(getDayOfMonthString()); } } -- Gitblit v1.7.1