其他分享
首页 > 其他分享> > 将文件大小kb转换成M

将文件大小kb转换成M

作者:互联网

得到文件的大小的一般是直接到得到的是文件的字节大小,也就是kb,我们有的时候需要做单位换算成B或者M,

下面方法只是换成M,没有到G,

有更好的方法,请随时沟通,以便交流学习,谢谢.

 

    public static void main(String[] args) {
        String fileSize = "2077";
        System.out.println("fileSize转换之后"+toFileSizeM(fileSize)); 
    }
    
    /**
     * 将文件大小kb转换成M
     * @param fileSizeKb
     * @return fileSizeM
     */
    public static String toFileSizeM(String fileSizeKb){    
        String fileSizeM= "";
        if(fileSizeKb==null)
            fileSizeM ="0"+"B";
        long fSize = Long.valueOf(fileSizeKb);
        if(fSize<1024){
            fileSizeM = fileSizeKb+"B";//字节
        }else if(fSize>1024){
            BigDecimal bg = new BigDecimal(fSize);
            BigDecimal flsize = new BigDecimal(fSize);
            BigDecimal temp = new BigDecimal(1024);
            if(-1==temp.compareTo(flsize) || 0==temp.compareTo(flsize)){
                //四色五入保留2位小数(根据需求随意调整)
                flsize = bg.divide(new BigDecimal(1024), 2,BigDecimal.ROUND_HALF_UP);
                fileSizeM =flsize+"KB";
            }
            if(-1==temp.compareTo(flsize) || 0==temp.compareTo(flsize)){ //MB
                //四色五入保留2位小数(根据需求随意调整)
                flsize = flsize.divide(new BigDecimal(1024), 2,BigDecimal.ROUND_HALF_UP);
                fileSizeM = flsize+"M";
            }
        }
        return fileSizeM;

标签:文件大小,转换成,kb,BigDecimal,temp,flsize,fileSizeM,new,String
来源: https://www.cnblogs.com/iRyz/p/16362998.html