From 30c9299fa9ffc8d3cd51d4a18b4c0b33c3ef8141 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期三, 08 四月 2026 09:36:44 +0800
Subject: [PATCH] 修改

---
 src/main/java/com/lxzn/framework/utils/file/FileUtil.java |  146 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 145 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/lxzn/framework/utils/file/FileUtil.java b/src/main/java/com/lxzn/framework/utils/file/FileUtil.java
index 25a40b4..e20959e 100644
--- a/src/main/java/com/lxzn/framework/utils/file/FileUtil.java
+++ b/src/main/java/com/lxzn/framework/utils/file/FileUtil.java
@@ -5,7 +5,6 @@
 import com.lxzn.framework.exception.ExceptionCast;
 import com.lxzn.framework.utils.SHA256Util;
 import com.lxzn.framework.utils.date.DateUtil;
-import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Value;
@@ -16,6 +15,10 @@
 import java.io.*;
 import java.net.URLEncoder;
 import java.nio.channels.FileChannel;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.nio.file.StandardCopyOption;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -25,6 +28,7 @@
 public class FileUtil {
 
     private static String fileUploadFolder;
+
 
     @Value("${fileHomePath}")
     public void setFileUploadFolder(String fileUploadFolder) {
@@ -59,6 +63,91 @@
         dto.setFileSize(fileSize);
         dto.setFileSuffix(suffix);
         return dto;
+    }
+
+    /**
+     * 鏂规硶涓�:浣跨敤 FileWriter 鍐欐枃浠�
+     * @param filepath 鏂囦欢鐩綍
+     * @param content  寰呭啓鍏ュ唴瀹�
+     * @throws IOException
+     */
+    public static void fileWriterSql(String filepath, String content) throws IOException {
+        OutputStreamWriter outputStreamWriter = null;
+        try {
+            File file = new File(filepath);
+            if (!file.exists()){
+                file.createNewFile();
+            }
+            FileOutputStream outputStream = new FileOutputStream(file);
+            if (outputStream != null){
+                outputStreamWriter = new OutputStreamWriter(outputStream, "utf-8");
+                outputStreamWriter.write(content);
+                outputStreamWriter.flush();
+            }
+            try {
+                if (outputStreamWriter != null){
+                    outputStreamWriter.close();
+                }
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+        catch (IOException e) {
+            e.getMessage();
+        }
+        finally {
+            try {
+                if (outputStreamWriter != null){
+                    outputStreamWriter.close();
+                }
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    /**
+     * 鍒犻櫎鏂囦欢
+     *
+     * @param filePath
+     * @return
+     */
+    public static boolean deleteNcFile(String filePath) {
+        String lastFileReName =  fileUploadFolder + "/" + filePath ;
+        boolean flag = false;
+        File file = new File(lastFileReName);
+        if (!file.exists()) {
+            return flag;
+        }
+        boolean b = file.delete();
+        if (!b) {
+            System.out.println("鏂囦欢鍒犻櫎澶辫触锛� " + filePath);
+        }
+        return true;
+    }
+
+    public static boolean copyFileUpName(String lastFile ,String newFile,String ncFix) {
+        String lastFileReName =  fileUploadFolder + "/" + lastFile ;
+        if (StringUtils.isNotBlank(ncFix)) {
+            newFile =  newFile + "." + ncFix;
+        }
+        File toFile = new File(newFile);
+        if (!toFile.getParentFile().exists()) {
+            toFile.mkdirs();
+        }
+        try {
+            long begintime = System.currentTimeMillis(); // 鑾峰彇鎷疯礉鏂囦欢鍓嶇殑绯荤粺鏃堕棿
+            Files.copy(Paths.get(lastFileReName),
+                    Paths.get(newFile),
+                    StandardCopyOption.REPLACE_EXISTING);
+            long endtime = System.currentTimeMillis(); // 鑾峰彇鏂囦欢鎷疯礉缁撴潫鏃剁殑绯荤粺鏃堕棿
+            System.out.println("鎷疯礉鏂囦欢鎵�娑堣�楃殑鏃堕棿鏄細" + (endtime - begintime) + "姣");
+            return true;
+        }
+        catch (Exception e) {
+            e.printStackTrace();
+            return false;
+        }
     }
 
     public static FileUploadResult uploadFile(String fileName, InputStream fis) {
@@ -176,6 +265,54 @@
             log.error(e.getMessage());
         }
         return -1;
+    }
+
+
+
+    /**
+     * 鍒犻櫎鏂囦欢
+     *
+     * @param filePath
+     * @return
+     */
+    public static boolean deleteFile(String filePath) {
+        boolean flag = false;
+        File file = new File(filePath);
+        if (!file.exists()) {
+            return flag;
+        }
+        boolean b = file.delete();
+        if (!b) {
+            try {
+                System.gc();
+                Path path = Paths.get(filePath);
+                Files.deleteIfExists(path);
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+        return true;
+    }
+
+
+    /**
+     *
+     * @param file
+     * @return
+     */
+    public static long selectFileSize(File file) {
+        try (FileInputStream fis = new FileInputStream(file)) {
+            long size = 0;
+            int read;
+            byte[] buffer = new byte[1024];
+            while ((read = fis.read(buffer)) != -1) {
+                size += read;
+            }
+            return size;
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return 0;
     }
 
     /**
@@ -352,5 +489,12 @@
         return null;
     }
 
+    public static String getFileAbsPathTxt(String path){
+        File file = new File(path);
+        if(file.exists()){
+            return file.getAbsolutePath();
+        }
+        return null;
+    }
 
 }

--
Gitblit v1.9.3