亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

java 如何把byte轉(zhuǎn)化為KB、MB、GB的方法

 更新時(shí)間:2022年10月08日 09:13:07   作者:三少爺?shù)男? 
這篇文章主要介紹了java 如何把byte轉(zhuǎn)化為KB、MB、GB的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

java把byte轉(zhuǎn)化為KB、MB、GB的方法

從服務(wù)器下載一個(gè)文件時(shí)候,往往告訴你的是相應(yīng)的KB,MB,GB。

方法如下

public static String getNetFileSizeDescription(long size) {
        StringBuffer bytes = new StringBuffer();
        DecimalFormat format = new DecimalFormat("###.0");
        if (size >= 1024 * 1024 * 1024) {
            double i = (size / (1024.0 * 1024.0 * 1024.0));
            bytes.append(format.format(i)).append("GB");
        }
        else if (size >= 1024 * 1024) {
            double i = (size / (1024.0 * 1024.0));
            bytes.append(format.format(i)).append("MB");
        }
        else if (size >= 1024) {
            double i = (size / (1024.0));
            bytes.append(format.format(i)).append("KB");
        }
        else if (size < 1024) {
            if (size <= 0) {
                bytes.append("0B");
            }
            else {
                bytes.append((int) size).append("B");
            }
        }
        return bytes.toString();
    }

這里用到了這個(gè)類:

DecimalFormat

java字節(jié)轉(zhuǎn)換成MB,GB,TB和MB,GB,TB轉(zhuǎn)成字節(jié)的工具類

import java.math.BigDecimal;
public class ByteUtil {

    public static final Integer KB_SIZE = 2 << 9;
    public static final Integer MB_SIZE = 2 << 19;
    public static final Integer GB_SIZE = 2 << 29;

    public static BigDecimal bytes2Unit(long bytes, Integer unit) {
        BigDecimal size = new BigDecimal(bytes);
        BigDecimal u = new BigDecimal(unit);
        return size.divide(u, 2, BigDecimal.ROUND_DOWN);
    }

    public static Long unit2Byte(BigDecimal decimal,Integer unit) {
         return decimal.multiply(BigDecimal.valueOf(unit)).longValue();
    }

    public static Long kb2Byte(BigDecimal decimal) {
        return decimal.multiply(BigDecimal.valueOf(KB_SIZE)).longValue();
    }

    public static Long mb2Byte(BigDecimal decimal) {
        return decimal.multiply(BigDecimal.valueOf(MB_SIZE)).longValue();
    }

    public static Long gb2Byte(BigDecimal decimal) {
        return decimal.multiply(BigDecimal.valueOf(GB_SIZE)).longValue();
    }

    public static BigDecimal bytes2Kb(long bytes) {
        return bytes2Unit(bytes,KB_SIZE);
    }

    public static BigDecimal bytes2Mb(long bytes) {
        return bytes2Unit(bytes,MB_SIZE);
    }

    public static BigDecimal bytes2Gb(long bytes) {
        return bytes2Unit(bytes,GB_SIZE);
    }
}

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java讀取文件的簡(jiǎn)單實(shí)現(xiàn)方法

    Java讀取文件的簡(jiǎn)單實(shí)現(xiàn)方法

    這篇文章主要介紹了Java讀取文件的簡(jiǎn)單實(shí)現(xiàn)方法,通過(guò)一個(gè)讀取txt格式的log文件為例,詳細(xì)的講述了Java讀取文件的方法及原理,需要的朋友可以參考下
    2014-09-09
  • Java生成中間logo的二維碼的示例代碼

    Java生成中間logo的二維碼的示例代碼

    這篇文章主要介紹了Java如何生成中間logo的二維碼,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • spring?boot+mybatis-plus配置讀寫分離的操作

    spring?boot+mybatis-plus配置讀寫分離的操作

    這篇文章主要介紹了spring?boot+mybatis-plus配置讀寫分離的操作,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-01-01
  • 關(guān)于MVC設(shè)計(jì)模式及流程解析

    關(guān)于MVC設(shè)計(jì)模式及流程解析

    這篇文章主要介紹了關(guān)于MVC設(shè)計(jì)模式及流程解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • java連接mysql數(shù)據(jù)庫(kù)學(xué)習(xí)示例

    java連接mysql數(shù)據(jù)庫(kù)學(xué)習(xí)示例

    這篇文章主要介紹了java連接mysql數(shù)據(jù)庫(kù)學(xué)習(xí)示例,需要的朋友可以參考下
    2014-03-03
  • Java拆裝箱深度剖析

    Java拆裝箱深度剖析

    這篇文章主要為大家深度剖析了Java拆箱裝箱的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Maven安裝本地的jar包和創(chuàng)建帶模板的自定義項(xiàng)目的操作過(guò)程

    Maven安裝本地的jar包和創(chuàng)建帶模板的自定義項(xiàng)目的操作過(guò)程

    這篇文章主要介紹了Maven安裝本地的jar包和創(chuàng)建帶模板的自定義項(xiàng)目,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-03-03
  • java?stream實(shí)現(xiàn)分組BigDecimal求和以及自定義分組求和

    java?stream實(shí)現(xiàn)分組BigDecimal求和以及自定義分組求和

    這篇文章主要給大家介紹了關(guān)于java?stream實(shí)現(xiàn)分組BigDecimal求和以及自定義分組求和的相關(guān)資料,Stream是Java8的一大亮點(diǎn),是對(duì)容器對(duì)象功能的增強(qiáng),它專注于對(duì)容器對(duì)象進(jìn)行各種非常便利、高效的聚合操作或者大批量數(shù)據(jù)操作,需要的朋友可以參考下
    2023-12-12
  • spring aop實(shí)現(xiàn)接口超時(shí)處理組件的代碼詳解

    spring aop實(shí)現(xiàn)接口超時(shí)處理組件的代碼詳解

    這篇文章給大家介紹了spring aop實(shí)現(xiàn)接口超時(shí)處理組件,文中有詳細(xì)的實(shí)現(xiàn)思路,并通過(guò)代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-02-02
  • 關(guān)于SpringBoot+Mybatis報(bào)MapperScan.factoryBean()問(wèn)題

    關(guān)于SpringBoot+Mybatis報(bào)MapperScan.factoryBean()問(wèn)題

    解決SpringBoot+Mybatis中的MapperScan.factoryBean()問(wèn)題,讓你的項(xiàng)目運(yùn)行更順暢!本指南將帶你一步步解決這個(gè)問(wèn)題,讓你的開(kāi)發(fā)過(guò)程更加高效,不要錯(cuò)過(guò)這個(gè)實(shí)用指南,快來(lái)一探究竟吧!
    2024-02-02

最新評(píng)論