From 190d78bc9152b1fd366128dec100cc8a70a3a5d9 Mon Sep 17 00:00:00 2001
From: E1ED922C1E9526DD63272D7EC5C6CB77 <E1ED922C1E9526DD63272D7EC5C6CB77@i-search.com.cn>
Date: 星期二, 29 十二月 2020 14:49:16 +0800
Subject: [PATCH] 添加对HH:mm计算分

---
 src/main/java/com/hx/util/DateUtil.java |  118 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 114 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/hx/util/DateUtil.java b/src/main/java/com/hx/util/DateUtil.java
index 724ae27..a8d58a6 100644
--- a/src/main/java/com/hx/util/DateUtil.java
+++ b/src/main/java/com/hx/util/DateUtil.java
@@ -216,8 +216,13 @@
      * @return
      * @throws Exception
      */
-    public static Date parseString(String str) throws Exception {
-        return Format_2.parse(str);
+    public static Date parseString(String str) {
+        try {
+            return Format_2.parse(str);
+        }catch (Exception e)
+        {
+            return null;
+        }
     }
 
     /**
@@ -228,10 +233,38 @@
      * @return
      * @throws Exception
      */
-    public static Date parseString(String str, String format) throws Exception {
+    public static Date parseString(String str, String format) {
         SimpleDateFormat sdf = new SimpleDateFormat(format);
-        return sdf.parse(str);
+        try{
+            return sdf.parse(str);
+        }catch (Exception e)
+        {
+            return null;
+        }
     }
+
+    /**瀛楃涓茶浆鎴愭椂闂磞yyy-MM-dd HH:mm:ss*/
+    public static Date parseString_1(String str)
+    {
+        try{
+            return  Format_3.parse(str);
+        }catch (Exception e)
+        {
+            return null;
+        }
+    }
+
+    /**瀛楃涓茶浆鎴愭椂闂磞yyy-MM-dd*/
+    public static Date parseString_2(String str)
+    {
+        try{
+            return Format_4.parse(str);
+        }catch (Exception e)
+        {
+            return null;
+        }
+    }
+
 
     /**鏃堕棿涓婂垎閽熷彔鍔�
      * @Author: ChenJiaHe
@@ -344,6 +377,42 @@
         return weekDays[w];
     }
 
+    /**
+     * endTime姣攕tartTime澶氱殑澶╂暟
+     * @param startTime 鏈�灏忔椂闂�
+     * @param endTime 鏈�澶ф椂闂�
+     * @return
+     */
+    public static Integer differDay(Date startTime,Date endTime){
+        Calendar cal1 = Calendar.getInstance();
+        cal1.setTime(startTime);
+
+        Calendar cal2 = Calendar.getInstance();
+        cal2.setTime(endTime);
+        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;
+        }
+    }
+
     /**鍒ゆ柇涓や釜鏃堕棿鏄笉鏄悓涓�澶�*/
     public static boolean timeEqual(Date startTime,Date endTime){
        if(startTime == null || endTime==null){
@@ -356,4 +425,45 @@
        return status;
     }
 
+    /**鎶婄杞崲鎴怷澶鏃禭鍒哫绉�*/
+    public static String getChineseStr(Integer second)
+    {
+        int day = 24 * 60 * 60;
+        int hour = 60 * 60;
+        int min = 60;
+
+        int dayNum = second / day;
+        int hourNum = second % day / hour;
+        int minNum = second % day % hour / min;
+        second = second % day % hour % min;
+
+        String str = dayNum > 0 ? dayNum + "澶�" : "";
+        str += hourNum > 0 ? hourNum + "鏃�" : "";
+        str += minNum > 0 ? minNum + "鍒�" : "";
+        str += second + "绉�";
+
+        return str;
+    }
+
+    /**
+     * 閽堝str鏍煎紡鐨勬椂闂村仛杞崲 鏍煎紡涓�"xx:xx"
+     * @param time  浼犲叆鐨勬椂闂�
+     * @return  杩斿洖鍒嗛挓濡傛灉10锛�25,鍒欒繑鍥�625
+     */
+    public static int getMinuteNum(String time){
+
+        if(!StringUtils.isEmpty(time))
+        {
+            String[] arr = time.split(":");
+            if(arr != null && arr.length == 2)
+            {
+                return Integer.parseInt(arr[0]) * 60 + Integer.parseInt(arr[1]);
+            }
+        }
+
+        return 0;
+
+
+    }
+
 }

--
Gitblit v1.8.0