From 9134911f3185df2ed3668225a21aa1056abbcbf4 Mon Sep 17 00:00:00 2001 From: fwq <582742538@qq.com> Date: 星期五, 03 二月 2023 10:54:17 +0800 Subject: [PATCH] 增加文件转换方法 --- src/main/java/com/hx/util/DateUtil.java | 88 ++++++++++++++++++++++++++++++++++++++----- 1 files changed, 77 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/hx/util/DateUtil.java b/src/main/java/com/hx/util/DateUtil.java index befbd61..a52169c 100644 --- a/src/main/java/com/hx/util/DateUtil.java +++ b/src/main/java/com/hx/util/DateUtil.java @@ -572,8 +572,7 @@ /** * 鑾峰彇褰撳墠鏈堢殑缁撴潫鏃堕棿 - * - * @param date 0鎷垮彇褰撴湀锛屾浠h〃鍚庯紝璐熶唬琛ㄥ墠锛屽�间负鍑犱釜锛堟湀锛� + * @param date 鐐瑰墠鏃堕棿 * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 23:59:59 */ public static Date getMonthEnd(Date date) { @@ -588,7 +587,6 @@ /** * 鑾峰彇褰撳墠鏈堢殑缁撴潫鏃堕棿 - * * @param num 0鎷垮彇褰撴湀锛屾浠h〃鍚庯紝璐熶唬琛ㄥ墠锛屽�间负鍑犱釜锛堟湀锛� * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 23:59:59 */ @@ -611,7 +609,7 @@ public static Date getYearStart(Date time) { Calendar calendar = Calendar.getInstance(); calendar.setTime(time); - calendar.set(Calendar.MONTH, 1); + calendar.set(Calendar.MONTH, 0); calendar.set(Calendar.DAY_OF_MONTH, 1); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); @@ -619,40 +617,68 @@ return calendar.getTime(); } - /** + * 鑾峰彇褰撳墠骞寸殑缁撴潫鏃堕棿 + * @param time 鏃堕棿 + * @return 杩斿洖鏃堕棿 鏍煎紡yyyy-MM-dd 00:00:00 + */ + public static Date getYearEnd(Date time) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(time); + calendar.set(Calendar.MONTH, 11); + calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DATE)); + calendar.set(Calendar.HOUR_OF_DAY, 23); + calendar.set(Calendar.MINUTE, 59); + calendar.set(Calendar.SECOND, 59); + return calendar.getTime(); + } + + + /**杩欏ぉ鐨勫紑濮嬫椂闂� * 鏃ユ湡2000-01-01鍙�2000-01-01 00:00:00 */ public static String dayToStart(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); - calendar.set(Calendar.HOUR, 0); + calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); return sdf.format(calendar.getTime()); } - /** + /**杩欏ぉ鐨勬渶鍚庢椂闂� * 鏃ユ湡2000-01-01鍙�2000-01-01 23:59:59 */ public static String dayToEnd(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); - calendar.set(Calendar.HOUR, 23); + calendar.set(Calendar.HOUR_OF_DAY, 23); calendar.set(Calendar.MINUTE, 59); calendar.set(Calendar.SECOND, 59); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); return sdf.format(calendar.getTime()); } - /** + /**杩欏ぉ鐨勫紑濮嬫椂闂� + * 鏃ユ湡2000-01-01鍙�2000-01-01 00:00:00 + */ + public static Date dayToStartDate(Date date) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + calendar.set(Calendar.HOUR_OF_DAY, 0); + calendar.set(Calendar.MINUTE, 0); + calendar.set(Calendar.SECOND, 0); + return calendar.getTime(); + } + + /**杩欏ぉ鐨勬渶鍚庢椂闂� * 鏃ユ湡2000-01-01鍙�2000-01-01 23:59:59 */ public static Date dayToEndDate(Date date) { Calendar calendar = Calendar.getInstance(); calendar.setTime(date); - calendar.set(Calendar.HOUR, 23); + calendar.set(Calendar.HOUR_OF_DAY, 23); calendar.set(Calendar.MINUTE, 59); calendar.set(Calendar.SECOND, 59); return calendar.getTime(); @@ -708,10 +734,50 @@ public static boolean getFrontMinute(Date date,int num) { Calendar cal = Calendar.getInstance(); cal.setTime(date); - cal.set(Calendar.HOUR, num-1); + cal.set(Calendar.HOUR_OF_DAY, num-1); cal.set(Calendar.MINUTE, 59); cal.set(Calendar.SECOND, 59); return date.compareTo(cal.getTime()) < 1; } + + /** + * 鑾峰緱鏌愪釜鏃ユ湡鐨勫綋澶╂煇鐐� + * 渚嬪:2022-12-26 11:20:00 -> 2022-12-26 13:00:00 + * @param num 24灏忔椂 + */ + public static String getHourDayTime(Date date,int num) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + calendar.set(Calendar.HOUR_OF_DAY, num); + calendar.set(Calendar.MINUTE, 0); + calendar.set(Calendar.SECOND, 0); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", Locale.CHINA); + return sdf.format(calendar.getTime()); + } + + /** + * 鑾峰彇鏃堕棿褰撴湀鍓╀綑澶╂暟 + * */ + public static Integer getMonthSurplus(Date date) { + Calendar month = Calendar.getInstance(); + month.setTime(new Date()); + month.set(Calendar.DATE, 1); + month.roll(Calendar.DATE, -1); + return month.getActualMaximum(Calendar.DATE) - Calendar.getInstance().get(Calendar.DAY_OF_MONTH); + } + + /**鑾峰彇褰撳墠鏃堕棿鎵�鍦ㄥ懆鐨勫懆涓�00:00:00*/ + public static Date getMonday(Date date) { + Calendar calendar = Calendar.getInstance(Locale.CHINA); + calendar.setTime(date); + //浠ュ懆涓�涓洪鏃� + calendar.setFirstDayOfWeek(Calendar.MONDAY); + calendar.set(Calendar.HOUR_OF_DAY, 0); + calendar.set(Calendar.MINUTE, 0); + calendar.set(Calendar.SECOND, 0); + //鍛ㄤ竴 + calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); + return calendar.getTime(); + } } -- Gitblit v1.8.0