类 FileUtils

java.lang.Object
com.cdkjframework.util.files.FileUtils

@Component public class FileUtils extends Object
  • 构造器详细资料

    • FileUtils

      public FileUtils()
  • 方法详细资料

    • saveFile

      public static boolean saveFile(InputStream inputStream, String fileName) throws GlobalException
      保存文件
      参数:
      inputStream - 文件流
      fileName - 文件名称
      返回:
      返回结果
      抛出:
      GlobalException - 异常信息
    • saveFile

      public static boolean saveFile(InputStream inputStream, String catalog, String fileName) throws GlobalException
      保存文件
      参数:
      inputStream - 文件流
      fileName - 文件路径
      catalog - 自定义文件路径
      fileName - 文件名称
      返回:
      返回结果
      抛出:
      GlobalException - 异常信息
    • saveFile

      public static boolean saveFile(String character, String directoryPath, String catalog, String fileName) throws GlobalException
      保存文件
      参数:
      character - 文件内容
      directoryPath - 文件路径
      catalog - 自定义文件路径
      fileName - 文件名称
      返回:
      返回结果
      抛出:
      GlobalException - 异常信息
    • saveFile

      public static boolean saveFile(String character, String directoryPath, String catalog, String fileName, boolean append) throws GlobalException
      保存文件
      参数:
      character - 文件内容
      directoryPath - 文件路径
      catalog - 自定义文件路径
      fileName - 文件名称
      append - 是否追加
      返回:
      返回结果
      抛出:
      GlobalException - 异常信息
    • saveFile

      public static boolean saveFile(InputStream inputStream, String directoryPath, String catalog, String fileName) throws GlobalException
      保存文件
      参数:
      inputStream - 文件流
      directoryPath - 文件路径
      catalog - 自定义文件路径
      fileName - 文件名称
      返回:
      返回结果
      抛出:
      GlobalException - 异常信息
    • saveFile

      public static boolean saveFile(InputStream inputStream, String directoryPath, String catalog, String fileName, boolean append) throws GlobalException
      保存文件
      参数:
      inputStream - 文件流
      directoryPath - 文件路径
      catalog - 自定义文件路径
      fileName - 文件名称
      append - 是否追加
      返回:
      返回结果
      抛出:
      GlobalException - 异常信息
    • readFile

      public static byte[] readFile(String directoryPath, String catalog, String fileName) throws GlobalException, IOException
      读取文件
      参数:
      directoryPath - 目录
      catalog - 自定义路径
      fileName - 文件史
      返回:
      返回结果
      抛出:
      GlobalException - 仅供异常信息
      IOException - 异常信息
    • beforeDeleteSpecifiedTimeFile

      public static void beforeDeleteSpecifiedTimeFile(LocalDateTime date, String catalog) throws GlobalException
      删除指定目录、时间之前的文件
      参数:
      date - 时间
      catalog - 目录
      抛出:
      GlobalException
    • beforeDeleteSpecifiedTimeFile

      public static void beforeDeleteSpecifiedTimeFile(LocalDateTime date, String catalog, String directoryPath, List<String> excludeFiles) throws GlobalException
      删除指定目录、时间之前的文件
      参数:
      date - 时间
      catalog - 目录
      directoryPath - 路径(可为空)
      excludeFiles - 不删除文件集合(可为空)
      抛出:
      GlobalException
    • getFileSuffix

      public static String getFileSuffix(String fileName)
      获取文件后缀
      参数:
      fileName - 文件名
      返回:
      返回结果
    • getFileName

      public static String getFileName(String filePath)
      获取文件名称
      参数:
      filePath - 文件路径
      返回:
      返回结果
    • getPath

      public static String getPath(String path)
      获取到目录
      返回:
      返回结果
    • fileUnModified

      public static void fileUnModified(File file)
      文件不能修改,执行、只读取
      参数:
      file - 文件
    • getFileSize

      public static long getFileSize(File file)
      获取文件大小
      参数:
      file - 文件
      返回:
      返回大小
    • getDirSize

      public static long getDirSize(File file)
      多聚目录大小
      参数:
      file - 文件
      返回:
      返回大小
    • byteToString

      public static String byteToString(long fileBytes)
      byte字节转换为字符串
      参数:
      fileBytes - 文件 byte
      返回:
      返回字符编码
    • encrypt

      public static void encrypt(File sourceFile, File encryptFile) throws Exception
      加密文件
      参数:
      sourceFile - 源文件
      encryptFile - 加密后文件
      抛出:
      Exception - 异常
    • encrypt

      public static void encrypt(InputStream inputStream, File encryptFile) throws Exception
      文件加密
      参数:
      inputStream - 文件流
      encryptFile - 加密后文件
      抛出:
      Exception - 异常信息
    • decrypt

      public static void decrypt(File sourceFile, File decryptFile) throws Exception
      解密文件
      参数:
      sourceFile - 源文件
      decryptFile - 解密文件
      抛出:
      Exception - 异常信息
    • buildMultipartFile

      public static org.springframework.web.multipart.MultipartFile buildMultipartFile(InputStream inputStream, String fileName) throws IOException
      获取传输的 multipartFile,将输入流+文件名转成multipartFile文件,去调用feignClient
      参数:
      inputStream - 文件流
      fileName - 文件名
      返回:
      返回多部分文件
      抛出:
      IOException
    • buildMultipartFile

      public static org.springframework.web.multipart.MultipartFile buildMultipartFile(OutputStream outputStream, String fileName)
      获取传输的 multipartFile,将输入流+文件名转成multipartFile文件,去调用feignClient
      参数:
      outputStream - 文件流
      fileName - 文件名
      返回:
      返回多部分文件
    • deleteCatalogFile

      public static void deleteCatalogFile(String catalog)
      删除日志
      参数:
      catalog - 日志路径
    • deleteCatalogFile

      public static void deleteCatalogFile(String catalog, boolean isDirectory)
      删除日志
      参数:
      catalog - 日志路径
      isDirectory - 是否删除根目录(默认为true)
    • deleteCatalogFile

      public static void deleteCatalogFile(String catalog, boolean isDirectory, int day)
      删除日志
      参数:
      catalog - 日志路径
      isDirectory - 是否删除根目录(默认为true)
      day - 删除几天前的
    • fileCreationTime

      public static long fileCreationTime(String filePath) throws IOException
      获取文件创建时间
      参数:
      filePath - 文件路径
      返回:
      返回创建文件时间戳
      抛出:
      IOException
    • resizeImage

      public static OutputStream resizeImage(InputStream inputStream, int percent, String fileName) throws IOException
      改变图片的大小到宽为size,然后高随着宽等比例变化
      参数:
      inputStream - 上传的图片的输入流
      percent - 图片倍率
      fileName - 图片文件名称
      抛出:
      IOException - 异常信息
    • resizeImage

      public static OutputStream resizeImage(InputStream inputStream, int percent, String fileName, Color bgColor) throws IOException
      改变图片的大小到宽为size,然后高随着宽等比例变化
      参数:
      inputStream - 上传的图片的输入流
      percent - 图片倍率
      fileName - 图片文件名称
      bgColor - 背景色
      抛出:
      IOException - 异常信息
    • compressPictures

      public static byte[] compressPictures(String filePath, float quality)
      压缩图片(通过降低图片质量)
      参数:
      quality - 图片质量(0-1)
      返回:
      byte[] 返回数据结果
    • compressPictures

      public static byte[] compressPictures(byte[] bytes, float quality)
      压缩图片(通过降低图片质量)
      参数:
      quality - 图片质量(0-1)
      返回:
      byte[] 返回数据结果
    • compressPictures

      public static byte[] compressPictures(InputStream byteInput, float quality)
      压缩图片(通过降低图片质量)
      参数:
      quality - 图片质量(0-1)
      返回:
      byte[] 返回数据结果
    • validFileTypeByMagicNumber

      public static boolean validFileTypeByMagicNumber(InputStream inputStream, List<FileTypeEnums> typeEnums)
      验证文件的魔术数字
      参数:
      inputStream - 文件流
      typeEnums - 文件类型
      返回:
      返回结果
    • calculateHash

      public static String calculateHash(byte[] fileBytes) throws NoSuchAlgorithmException
      计算文件的 MD5 哈希值
      参数:
      fileBytes - 文件字节数组
      返回:
      MD5 哈希值
      抛出:
      NoSuchAlgorithmException - 如果找不到指定的加密算法,则抛出此异常