From 85ef942e7195abeb71466b7159c3ee30161e1e54 Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期二, 07 四月 2026 08:51:01 +0800
Subject: [PATCH] 2026.4.7
---
src/main/kotlin/cn/flightfeather/supervision/common/utils/FileUtil.kt | 81 +++++++++++++++++++++++++---------------
1 files changed, 50 insertions(+), 31 deletions(-)
diff --git a/src/main/kotlin/cn/flightfeather/supervision/common/utils/FileUtil.kt b/src/main/kotlin/cn/flightfeather/supervision/common/utils/FileUtil.kt
index f96d545..f1a87c1 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/common/utils/FileUtil.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/common/utils/FileUtil.kt
@@ -1,10 +1,9 @@
package cn.flightfeather.supervision.common.utils
-import java.awt.Image
-import java.awt.image.BufferedImage
+import cn.flightfeather.supervision.common.exception.BizException
+import org.springframework.web.multipart.MultipartFile
import java.io.*
import java.util.*
-import javax.imageio.ImageIO
object FileUtil {
@@ -20,13 +19,24 @@
out.close()
}
+ fun delFile(path: String): Boolean {
+ val file = File(path)
+ if (!file.exists()) return false
+ if (file.isDirectory) return false
+ try {
+ file.delete()
+ return true
+ } catch (e: Exception) {
+ throw BizException("鏂囦欢鍒犻櫎鍑洪敊", e.cause)
+ }
+ }
+
//鍒犻櫎鏂囦欢澶�
fun delFolder(folderPath: String) {
try {
delAllFile(folderPath) //鍒犻櫎瀹岄噷闈㈡墍鏈夊唴瀹�
- var filePath = folderPath
- filePath = filePath
- val myFilePath = java.io.File(filePath)
+ val filePath = folderPath
+ val myFilePath = File(filePath)
myFilePath.delete() //鍒犻櫎绌烘枃浠跺す
} catch (e: Exception) {
e.printStackTrace()
@@ -112,36 +122,45 @@
fos.write(b, 0, a)
a = fis.read(b)
}
+
}
}
}
+ fun saveFiles(files: Array<MultipartFile>, basePath: String, path: String): List<String> {
+ val pathList = mutableListOf<String>()
+ files.forEach { file ->
+ val ext = file.originalFilename?.split(".")?.last()
+ val fileName = UUID.randomUUID().toString() + "." + ext
+ pathList.add("$path$fileName")
+ val absolutePath = "${basePath}/$path/"
+ try {
+ //璋冪敤鏂囦欢淇濆瓨鏂规硶
+ uploadFile(file.bytes, absolutePath, fileName)
+ } catch (e: Exception) {
+ // TODO: handle exception
+ }
+ }
+ return pathList
+ }
+
/**
- * 鎸夌収鍥哄畾瀹藉害鍘嬬缉鍥剧墖鑷砨ase64褰㈠紡
+ * 鎸夌収璺緞寤虹珛鏂囦欢澶癸紝骞惰嚜鍔ㄥ鐞嗛噸澶嶈矾寰�
*/
-// fun compressImage2(bytes: ByteArray): String {
-// val length = 1440//鍥剧墖闀胯竟鍥哄畾鍘嬬缉涓�1440鍍忕礌
-//
-// val input = ByteArrayInputStream(bytes)
-// val srcImg = ImageIO.read(input)
-// var srcLong = 0
-// var srcShort = 0
-// if (srcImg.width <= srcImg.height) {
-// srcLong = srcImg.height
-// srcShort = srcImg.width
-//
-// } else {
-//
-// }
-// val scale = w.toFloat() / srcW
-// val h = (srcImg.height * scale).toInt()
-//
-// val buffImg = BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB)
-// buffImg.graphics.drawImage(srcImg.getScaledInstance(w, h, Image.SCALE_SMOOTH), 0, 0, null)
-// val out = ByteArrayOutputStream()
-// ImageIO.write(buffImg, "PNG", out)
-//
-// return SCHEME_PNG + Base64.getEncoder().encodeToString(out.toByteArray())
-// }
+ fun mkDirs(basePath: String): File {
+ var file = File(basePath)
+ var i = 1
+ while (file.exists() && i <= 100) {
+ val path = "$basePath($i)"
+ file = File(path)
+ i++
+ }
+ if (file.exists()) {
+ delAllFile(file.absolutePath)
+ } else {
+ file.mkdirs()
+ }
+ return file
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3