JAVA格式化文件大小字节数据("B", "KB", "MB", "GB", "TB")

 

 

复制代码
/**
     * 格式化字节数据
     *
     * @param size 大小,单位字节
     */
    public static String formatSize(Long size) {
        if (size == null || size <= 0) {
            return "";
        }
        String[] units = {"B", "KB", "MB", "GB", "TB"};
        int unitIndex = (int) (Math.log10(size) / 3);
        double unitValue = 1 << (unitIndex * 10);
        return BigDecimal.valueOf(size / unitValue).setScale(2, RoundingMode.HALF_UP) + " " + units[unitIndex];
    }
复制代码

 

使用

 public static void main(String[] args) {
        System.out.println(formatSize(3141366L));
    }

结果 (单位和数字之间会有一个空格)

3.00 MB

 

posted @   yvioo  阅读(145)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
历史上的今天:
2022-03-01 docker上传镜像到私有镜像
点击右上角即可分享
微信分享提示