From ac20dc99bf1f463365dba071973e08fffbd294b4 Mon Sep 17 00:00:00 2001
From: 13693261870 <252740454@qq.com>
Date: 星期五, 14 七月 2023 14:12:21 +0800
Subject: [PATCH] 1

---
 src/main/java/com/lf/server/helper/FileHelper.java |   87 ++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 77 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/lf/server/helper/FileHelper.java b/src/main/java/com/lf/server/helper/FileHelper.java
index 80ce585..132649a 100644
--- a/src/main/java/com/lf/server/helper/FileHelper.java
+++ b/src/main/java/com/lf/server/helper/FileHelper.java
@@ -7,15 +7,14 @@
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
+import java.io.*;
 import java.nio.ByteBuffer;
 import java.nio.channels.FileChannel;
 import java.nio.charset.StandardCharsets;
 import java.security.MessageDigest;
 import java.text.DecimalFormat;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 鏂囦欢甯姪绫�
@@ -49,7 +48,7 @@
 
         String fileName = file.getName().toLowerCase();
 
-        int idx = fileName.lastIndexOf(StaticData.POINT);
+        int idx = fileName.indexOf(StaticData.POINT);
         if (idx == -1) {
             return "";
         }
@@ -185,6 +184,24 @@
     }
 
     /**
+     * 鑾峰彇鏂囦欢澶у皬
+     */
+    public static String getSizes(double mbNumber) {
+        if (mbNumber < StaticData.D1024) {
+            return new DecimalFormat("#.##MB").format(mbNumber);
+        }
+
+        double gbNumber = mbNumber / StaticData.D1024;
+        if (gbNumber < StaticData.D1024) {
+            return new DecimalFormat("#.##GB").format(gbNumber);
+        }
+
+        double tbNumber = gbNumber / StaticData.D1024;
+
+        return new DecimalFormat("#.##TB").format(tbNumber);
+    }
+
+    /**
      * byte杞琈B
      */
     public static double sizeToMb(long size) {
@@ -253,17 +270,19 @@
      * @param file 鏂囦欢
      */
     public static void deleteFiles(File file) {
-        if (file == null || !file.exists()) {
+        if (null == file || !file.exists()) {
             return;
         }
 
         if (file.isDirectory()) {
             File[] files = file.listFiles();
-            for (File f : files) {
-                if (f.isDirectory()) {
-                    deleteFiles(f);
-                } else {
-                    f.delete();
+            if (null != files && files.length > 0) {
+                for (File f : files) {
+                    if (f.isDirectory()) {
+                        deleteFiles(f);
+                    } else {
+                        f.delete();
+                    }
                 }
             }
         }
@@ -379,4 +398,52 @@
 
         return builder.toString();
     }
+
+    /**
+     * 鏍规嵁璺緞鑾峰彇鏂囦欢
+     */
+    public static void getFilesByPath(List<String> list, String path) {
+        File file = new File(path);
+        if (file.isDirectory()) {
+            File[] files = file.listFiles();
+            if (null == files) {
+                return;
+            }
+
+            for (File f : files) {
+                if (f.isDirectory()) {
+                    getFilesByPath(list, f.getPath());
+                } else {
+                    list.add(f.getPath());
+                }
+            }
+        } else {
+            list.add(file.getPath());
+        }
+    }
+
+    /**
+     * 澶嶅埗鏂囦欢
+     *
+     * @param src  婧愭枃浠�
+     * @param dest 鐩綍鏂囦欢
+     */
+    public static void copyFile(File src, File dest) throws IOException {
+        InputStream is = null;
+        OutputStream os = null;
+        try {
+            is = new FileInputStream(src);
+            os = new FileOutputStream(dest);
+
+            byte[] buffer = new byte[1024];
+
+            int length;
+            while ((length = is.read(buffer)) > 0) {
+                os.write(buffer, 0, length);
+            }
+        } finally {
+            os.close();
+            is.close();
+        }
+    }
 }

--
Gitblit v1.9.3