Administrator
2024-02-29 dddc5e6586e91d81f6b51b1fcaf291a3471bd50a
ard-work/src/main/java/com/ruoyi/utils/tools/ArdTool.java
@@ -1,10 +1,9 @@
package com.ruoyi.utils.tools;
import com.ruoyi.common.core.redis.RedisCache;
import lombok.extern.slf4j.Slf4j;
import javax.annotation.Resource;
import java.lang.reflect.Field;
import java.text.DecimalFormat;
import java.time.LocalTime;
import java.util.*;
@@ -47,7 +46,7 @@
     * @return
     */
    public static String getKeyByMinValue(Map<String, Double> map) {
        if (map == null) return null;
        if (map == null||map.size()==0) return null;
        List<Map.Entry<String, Double>> list = new ArrayList(map.entrySet());
        Collections.sort(list, (o1, o2) -> (o1.getValue().intValue() - o2.getValue().intValue()));
        String min = list.get(0).getKey();
@@ -87,4 +86,51 @@
            return 1;
        }
    }
    /**
     * 文件大小智能转换
     * 会将文件大小转换为最大满足单位
     * @param size(文件大小,单位为B)
     * @return 文件大小
     */
    public static String formatFileSize(Long size) {
        String sizeName = null;
        if (1024 * 1024 > size && size >= 1024) {
            sizeName = String.format("%.2f", size.doubleValue() / 1024) + "KB";
        } else if (1024 * 1024 * 1024 > size && size >= 1024 * 1024) {
            sizeName = String.format("%.2f", size.doubleValue() / (1024 * 1024)) + "MB";
        } else if (size >= 1024 * 1024 * 1024) {
            sizeName = String.format("%.2f", size.doubleValue() / (1024 * 1024 * 1024)) + "GB";
        } else {
            sizeName = size.toString() + "B";
        }
        return sizeName;
    }
    /**
     * 文件大小智能转换
     * 会将文件大小转换为最大满足单位
     * @param size(文件大小,单位为B)
     * @return   文件大小
     */
    public static String readableFileSize(long size) {
        if (size <= 0) {
            return "0";
        }
        final String[] units = new String[]{"B", "KB", "MB", "GB", "TB"};
        int digitGroups = (int) (Math.log10(size) / Math.log10(1024));
        return new DecimalFormat("#,###.##").format(size / Math.pow(1024, digitGroups)) + " " + units[digitGroups];
    }
    /**
     * byte数组转字符串
     * 刘苏义
     * 2023/10/18 8:42:59
     * @param byteArray
     */
    public static String byteArrayToString(byte[] byteArray) {
        StringBuilder stringBuilder = new StringBuilder();
        for (byte b : byteArray) {
            stringBuilder.append(String.valueOf(b));
        }
        return stringBuilder.toString();
    }
}