feiyu02
2024-08-02 16b961c2210fe29fd494ac1f9d830dd93503961f
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()
@@ -117,6 +127,23 @@
        }
    }
    fun saveFiles(files: Array<MultipartFile>, basePath: String, path: String): List<String> {
        val pathList = mutableListOf<String>()
        files.forEach { file ->
            val ext = file.resource.file.extension
            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
    }
    /**
     * 按照固定宽度压缩图片至base64形式
     */