在文件处理的系统中,很容易就能通过一些系统自带的方法取出其大小,问题是这个大小往往只是一个字节数B。

如果要把这个字节数转化为KB、MB、GB的最终呈现给用户,则涉及到整除与取余的算术运算。

方法如下:

public static String getPrintSize(long size) {

//如果字节数少于1024,则直接以B为单位,否则先除于1024,后3位因太少无意义

if (size < 1024) {

return String.valueOf(size) + "B";

} else {

size = size / 1024;

}

//如果原字节数除于1024之后,少于1024,则可以直接以KB作为单位

//因为还没有到达要使用另一个单位的时候

//接下去以此类推

if (size < 1024) {

return String.valueOf(size) + "KB";

} else {

size = size / 1024;

}

if (size < 1024) {

//因为如果以MB为单位的话,要保留最后1位小数,

//因此,把此数乘以100之后再取余

size = size * 100;

return String.valueOf((size / 100)) + "."

+ String.valueOf((size % 100)) + "MB";

} else {

//否则如果要以GB为单位的,先除于1024再作同样的处理

size = size * 100 / 1024;

return String.valueOf((size / 100)) + "."

+ String.valueOf((size % 100)) + "GB";

}

}在主函数调用几个字节数B,进行测试:

package fileSize;

public class fileSizeTest {

public static String getPrintSize(long size) {

//如果字节数少于1024,则直接以B为单位,否则先除于1024,后3位因太少无意义

if (size < 1024) {

return String.valueOf(size) + "B";

} else {

size = size / 1024;

}

//如果原字节数除于1024之后,少于1024,则可以直接以KB作为单位

//因为还没有到达要使用另一个单位的时候

//接下去以此类推

if (size < 1024) {

return String.valueOf(size) + "KB";

} else {

size = size / 1024;

}

if (size < 1024) {

//因为如果以MB为单位的话,要保留最后1位小数,

//因此,把此数乘以100之后再取余

size = size * 100;

return String.valueOf((size / 100)) + "."

+ String.valueOf((size % 100)) + "MB";

} else {

//否则如果要以GB为单位的,先除于1024再作同样的处理

size = size * 100 / 1024;

return String.valueOf((size / 100)) + "."

+ String.valueOf((size % 100)) + "GB";

}

}

public static void main(String[] args) {

System.out.println(getPrintSize(200));

System.out.println(getPrintSize(200000));

System.out.println(getPrintSize(200000000));

System.out.println(getPrintSize(2000000000));

}

}运行结果如下图:

Java 将byte转换kb_【Java】把字节数B转化为KB、MB、GB的方法相关推荐

  1. java b kb mb gb 转换_【Java】把字节数B转化为KB、MB、GB的方法

    在文件处理的系统中,很容易就能通过一些系统自带的方法取出其大小,问题是这个大小往往只是一个字节数B. 如果要把这个字节数转化为KB.MB.GB的最终呈现给用户,则涉及到整除与取余的算术运算. 方法如下 ...

  2. java mb单位转换_Java计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)

    程序员都很懒,你懂的! java程序员在实际的开发中会遇到很多的单位换算问题.今天我给大家带来的是关于计算机硬盘大小的换算.多数情况下,一般要求 b,kb,mb,gb,tb,pb之间的大小转换,我们都 ...

  3. 计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)

    程序员都很懒,你懂的! java程序员在实际的开发中会遇到很多的单位换算问题.今天我给大家带来的是关于计算机硬盘大小的换算.多数情况下,一般要求b,kb,mb,gb,tb,pb之间的大小转换,我们都知 ...

  4. java byte转文件大小_java上传文件大小转换(字节转kb/mb/gb)

    /** * 字节转kb/mb/gb * @param size * @return */ public String getPrintSize(long size) { //如果字节数少于1024,则 ...

  5. java.util.Date转换成java.sql.Date

    // 获取当前的系统时间,以java.util.Date对象返回 Date dateUtil = new Date(); // 获取当前的系统时间,以时间戳返回 long l = System.cur ...

  6. Java中 字节转 KB/MB/GB

    字节转 KB/MB/GB 保留两位小数四舍五入 public static String getFileSize(String size) {double length = Double.parseD ...

  7. js字节单位转换函数(KB MB GB TB PB EB ZB)

    先来个初级的 byteChange = byte => {let size = ''if (byte < 0.1 * 1024) { // 小于0.1KB 则转化成Bsize = byte ...

  8. js距离单位换算_JS数据容量单位转换(kb,mb,gb,tb)

    JS代码如下: var size = '8164674'; function bytesToSize(bytes) { if (bytes === 0) return '0 B'; var k = 1 ...

  9. 计算机存储单位:bit, Byte, KB, MB, GB, TB, PB, EB, ZB, BB

    一.计算机的存储单位有哪些呢? 计算机存储单位一般用 bit, Byte, KB, MB, GB, TB, PB, EB, ZB, BB来表示, 我们经常将Byte简称为B,将KB简称问K.什么几K了 ...

最新文章

  1. COALESCE语句解救sql的sum问题
  2. c++ PVOID封装成C#
  3. sqlserver阻止保存要求重新建立表的更改
  4. Adobe Acrobat Reader快捷键
  5. python transform_Pandas的数据分组-transform函数
  6. scratch的积木相与java的_scratch课堂:积木块详解
  7. android 人脸识别边框_android Arcface人脸识别框/人脸抓拍框/人脸追踪框
  8. Angular 6+ 之新版service
  9. 记忆与思考再到使用需要时间吗?
  10. 代码jquery分享一款jquery加载csv文件的代码
  11. Service服务Android
  12. mysql 表 字符集_如何查看MySQL数据库/表/列的字符集?
  13. 机器学习--组合分类方法之AdaBoost算法
  14. java中int算法的有趣现象
  15. android x5 浏览器教程,064-腾讯的X5WebView内嵌浏览器引擎的使用
  16. ⚡写一个有发音的背单词软件⚡——四六级必过系列
  17. c++中内存拷贝函数(C++ memcpy)详解
  18. 部署CentOS可视化界面GUI-之腾讯云服务器
  19. 尚硅谷-康师傅-MySQL详细笔记(1-9章)
  20. Python PaddleNLP实现自动生成虎年藏头诗

热门文章

  1. Win7系统无法复制粘贴怎么解决
  2. IE浏览器怎么清理缓存
  3. win11文件夹怎么放到文件栏
  4. 学习Spring Boot:(二十五)使用 Redis 实现数据缓存
  5. 学习Spring Boot:(二十二)使用 AOP
  6. C语言2020年作业,2020年c语言上机报告范文【四篇】
  7. 什么是超文本 超链接 HTML有什么特点,什么是超文本?什么是超链接?
  8. matlab 信息融合,MSDF,matlab,多传感器信息融合
  9. flutter不支持热更新_Flutter 在安卓上可以实现热更新了
  10. python网址太长_Python GUI-长链转短链