From 3f40721b45fda889f1e48598ef1aa833d09a271e Mon Sep 17 00:00:00 2001
From: chenjiahe <763432473@qq.com>
Date: 星期二, 12 七月 2022 19:22:14 +0800
Subject: [PATCH] 文件处理

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

diff --git a/src/main/java/com/hx/util/DateUtil.java b/src/main/java/com/hx/util/DateUtil.java
index a7e8001..258a55e 100644
--- a/src/main/java/com/hx/util/DateUtil.java
+++ b/src/main/java/com/hx/util/DateUtil.java
@@ -26,6 +26,18 @@
     private static SimpleDateFormat Format_16 = new SimpleDateFormat("yyyy/MM/dd HH:mm");
     private static SimpleDateFormat Format_17 = new SimpleDateFormat("HH:mm");
 
+    /**鏃堕棿鏍煎紡杞寲iso8601
+     * @param date 鏃堕棿
+     * @return 杩斿洖鐨勬椂闂存牸寮忓瓧绗︿覆
+     */
+    public static String dateFormatISO8601(Date date) {
+        if(!SimpleTool.checkNotNull(date)){
+            return "";
+        }
+        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX");//璁剧疆鏃ユ湡鏍煎紡
+        return df.format(date);
+    }
+
     /**鏃堕棿鏍煎紡杞寲
      * @param date 鏃堕棿
      * @param format 鏃堕棿鏍煎紡
@@ -37,6 +49,17 @@
         }
         SimpleDateFormat df = new SimpleDateFormat(format);//璁剧疆鏃ユ湡鏍煎紡
         return df.format(date);
+    }
+
+    /**鏃堕棿鎴宠浆鏃堕棿
+     * @param timestamp 鏃堕棿鎴�
+     * @param format 鏃堕棿鏍煎紡
+     * @return 杩斿洖鐨勬椂闂存牸寮忓瓧绗︿覆
+     */
+    public static Date timestampToDate(long timestamp, String format) {
+        SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        String sd = sdf.format(new Date(timestamp));      // 鏃堕棿鎴宠浆鎹㈡垚鏃堕棿
+        return DateUtil.parseString(sd,"yyyy-MM-dd HH:mm:ss");
     }
 
     /**
@@ -179,6 +202,20 @@
         return Format_14.format(date);
     }
 
+
+    /**
+     * 褰撳墠鏃堕棿涔嬪墠鐨勬椂闂翠笌褰撳墠鏃堕棿鐩稿樊澶氬皯绉�
+     * @param startDate 褰撳墠鏃堕棿涔嬪墠鐨勬椂闂�
+     * @return
+     */
+    public static int calLastedTime(Date startDate) {
+        long nowDate = new Date().getTime();
+        long startDateTime = startDate.getTime();
+        int diffSeconds = (int) ((nowDate - startDateTime) / 1000);
+        return diffSeconds;
+    }
+
+
     /**
      * 杞崲鎴恲yyyMMddHHmmssSSS鏍煎紡鐨勬棩鏈熷瓧绗︿覆
      *
@@ -216,8 +253,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 +270,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
@@ -269,6 +339,19 @@
         Calendar c = Calendar.getInstance();
         c.setTime(dateTime);
         c.add(Calendar.DATE, dayNum);
+        return c.getTime();
+    }
+
+    /**鏃堕棿涓婃湀鏁板彔鍔�
+     * @Author: ChenJiaHe
+     * @param dateTime 鏃堕棿
+     * @param dayNum 澶╂暟
+     * @return
+     */
+    public static Date addMonth(Date dateTime,int dayNum){
+        Calendar c = Calendar.getInstance();
+        c.setTime(dateTime);
+        c.add(Calendar.MONTH, dayNum);
         return c.getTime();
     }
 
@@ -392,4 +475,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