资源简介

java计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换) java 硬盘大小转换 数据转换 内存转换 存储大小转换

资源截图

代码片段和文件信息

package com.herman.utils;

/***
 * 存储大小(单位)转换器.
 */
public enum SizeConverter {
    /** 转换任意单位的大小 返回结果会包含两位小数但不包含单位. */
    Arbitrary {
        @Override
        public String convert(float size) {
            while (size > 1024) {
                size /= 1024;
            }
            return String.format(FORMAT_F size);
        }
    }
    
    // -----------------------------------------------------------------------
    // 有单位
    /** 转换单位为B的大小 返回结果会包含两位小数以及单位. 如: 1024B->1KB (1024*1024)B->1MB */
    B {
        @Override
        public String convert(float B) {
            return converter(0 B);
        }
    }
    /** 转换单位为B的大小 返回结果会包含两位小数以及单位. */
    KB {
        @Override
        public String convert(float KB) {
            return converter(1 KB);
        }
    }
    /** 转换单位为MB的大小 返回结果会包含两位小数以及单位. */
    MB {
        @Override
        public String convert(float MB) {
            return converter(2 MB);
        }
    }
    /** 转换单位为GB的大小 返回结果会包含两位小数以及单位. */
    GB {
        @Override
        public String convert(float GB) {
            return converter(3 GB);
        }
    }
    /** 转换单位为TB的大小 返回结果会包含两位小数以及单位. */
    TB {
        @Override
        public String convert(float TB) {
            return converter(4 TB);
        }
    }
    
    // -----------------------------------------------------------------------
    // trim没单位
    /** 转换任意单位的大小 返回结果小数部分为0时将去除两位小数 不包含单位. */
    ArbitraryTrim {
        @Override
        public String convert(float size) {
            while (size > 1024) {
                size /= 1024;
            }

            int sizeInt = (int) size;
            boolean isfloat = size - sizeInt > 0.0F;
            if (isfloat) {
                return String.format(FORMAT_F size);
            }
            return String.format(FORMAT_D sizeInt);
        }
    }
    
    // -----------------------------------------------------------------------
    // trim有单位
    /** 转换单位为B的大小 返回结果小数部分为0时将去除两位小数 会包含单位. */
    BTrim {
        @Override
        public String convert(float B) {
            return trimConverter(0 B);
        }
    }
    /** 转换单位为KB的大小 返回结果小数部分为0时将去除两位小数 会包含单位. */
    KBTrim {
        @Override
        public String convert(float KB) {
            return trimConverter(1 KB);
        }
    }
    /** 转换单位为MB的大小 返回结果小数部分为0时将去除两位小数 会包含单位. */
    MBTrim {
        @Override
        public String convert(float MB) {
            return trimConverter(2 MB);
        }
    }
    /** 转换单位为GB的大小 返回结果小数部分为0时将去除两位小数 会包含单位. */
    GBTrim {
        @Override
        public String convert(float GB) {
            return trimConverter(3 GB);
        }
    }
    /** 转换单位为TB的大小 返回结果小数部分为0时将去除两位小数 会包含单位. */
    TBTrim {
        @Override
        public String convert(float TB) {
            return trimConverter(4 TB);
        }
    };
    /***
     * 

 将指定的大小转换到1024范围内的大小. 


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-05-27 13:13  计算机硬盘大小转换(BKBMBGBTBPB之间的大小转换)\
     文件        8610  2014-05-27 10:36  计算机硬盘大小转换(BKBMBGBTBPB之间的大小转换)\SizeConverter.java
     文件         114  2014-05-27 13:18  计算机硬盘大小转换(BKBMBGBTBPB之间的大小转换)\说明.txt

评论

共有 条评论