1. /**
  2. * 转换流量格式为xxGBxxMBxxKB
  3. * @param flow 156165(xxxxxx)
  4. */
  5. public String changeFlowFormat(String flow) {
  6. Integer flows = Integer.valueOf(flow);
  7. if (flows > 0 && flows < 1024) {//小于1M
  8. return flows + "KB";
  9. } else if (flows >= 1024 && flows < 1048576) {//大于1M小于1G
  10. int changeM = (int) Math.floor(flows / 1024);//整M数
  11. int surplusM = (int) Math.floor(flows % 1024);//除M后的余数
  12. if (surplusM > 0) {//余数大于0KB
  13. return changeM + "MB" + surplusM + "KB";
  14. } else {//整M,没有余数
  15. return changeM + "MB";
  16. }
  17. } else if (flows >= 1048576) {//大于1G
  18. int changeG = (int) Math.floor(flows / 1048576);//整G数
  19. int surplusG = (int) Math.floor(flows % 1048576);//除G后的余数
  20. if (surplusG >= 1024) {//余数大于大于1M
  21. int changeM = (int) Math.floor(surplusG / 1024);
  22. int surplusM = (int) Math.floor(surplusG % 1024);
  23. if (surplusM > 0) {//余数大于0KB
  24. return changeG + "GB" + changeM + "MB" + surplusM + "KB";
  25. } else {//整M,没有余数
  26. return changeG + "GB" + changeM + "MB";
  27. }
  28. } else if (surplusG < 1024 && surplusG > 0) {//余数小于1M,大于0K
  29. int surplusM = (int) Math.floor(surplusG % 1024);
  30. return changeG + "GB" + surplusM + "KB";
  31. } else {
  32. return changeG + "GB";
  33. }
  34. }
  35. return "暂无数据";
  36. }
  37. //js方法
  38. /**
  39. * 转换流量格式为xxGBxxMBxxKB
  40. * @param flow 156165(xxxxxx)
  41. */
  42. function changeFlowFormat(flow) {
  43. console.log(flow);
  44. if (flow >= 0 && flow < 1024) {//小于1M
  45. return flow + "KB";
  46. } else if (flow >= 1024 && flow < 1048576) {//大于1M小于1G
  47. var changeM = Math.floor(flow / 1024);//整M数
  48. var surplusM = Math.floor(flow % 1024);//除M后的余数
  49. if (surplusM > 0) {//余数大于0KB
  50. return changeM + "MB" + surplusM + "KB";
  51. } else {//整M,没有余数
  52. return changeM + "MB";
  53. }
  54. } else if (flow >= 1048576) {//大于1G
  55. var changeG = Math.floor(flow / 1048576);//整G数
  56. var surplusG = Math.floor(flow % 1048576)//除G后的余数
  57. if (surplusG >= 1024) {//余数大于大于1M
  58. var changeM = Math.floor(surplusG / 1024);
  59. var surplusM = Math.floor(surplusG % 1024);
  60. if (surplusM > 0) {//余数大于0KB
  61. return changeG + "GB" + changeM + "MB" + surplusM + "KB";
  62. } else {//整M,没有余数
  63. return changeG + "GB" + changeM + "MB";
  64. }
  65. } else if (surplusG < 1024 && surplusG > 0) {//余数小于1M,大于0K
  66. var surplusM = Math.floor(surplusG % 1024);
  67. return changeG + "GB" + surplusM + "KB";
  68. } else {
  69. return changeG + "GB";
  70. }
  71. }
  72. return "暂无数据";
  73. }

java将流量KB转换为GB、MB、KB格式的更多相关文章

  1. java 上传文件大小转换为 GB/MB/KB/B

    1.工具类 package cn.cmodes.common.utils; import java.io.File; import java.io.FileInputStream; import ja ...

  2. php文件大小单位转换GB MB KB

    private function formatBytes($size){ $units = array('字节','K','M','G','T'); $i = 0; for( ; $size>= ...

  3. GB MB KB B 关系

    1KB=1024Bytes=2的10次方Bytes 1MB=1024KB=2的20次方Bytes 1GB=1024MB=2的30次方Bytes 1TB=1024GB=2的40次方Bytes

  4. 文件大小转换成可显示的Mb,Gb和kb方法

    public static String unitConversion(float resource) { String[] unit = new String[] { "B", ...

  5. 关于 KB/KiB、MB/MiB

    ermmm--怎么说呢,这个非常容易搞混,那就写篇 blog 澄清一下吧-- 首先贴上百度百科的官方定义 根据国际单位制标准,1KB = 1000B(字节, Byte). 根据按照 IEC 命名标准 ...

  6. JAVA 长整型转换为IP地址的方法

    JAVA 长整型转换为IP地址的方法 代码例如以下: /** * 整型解析为IP地址 * @param num * @return */ public static String int2iP(Lon ...

  7. Java进阶(二十三)java中long类型转换为int类型

    java中long类型转换为int类型 由int类型转换为long类型是向上转换,可以直接进行隐式转换,但由long类型转换为int类型是向下转换,可能会出现数据溢出情况: 主要以下几种转换方法,供参 ...

  8. java.sql.SQLException: 无法转换为内部表示 -〉java 查询oracle数据库返回错误信息

    java.sql.SQLException: 无法转换为内部表示 Query: SELECT * FROM  nontheasttycoon Parameters: []    at org.apac ...

  9. Cause: java.sql.SQLException: 无法转换为内部表示(Mybatis)

    公司开发档案系统使用框架:Spring+Struts2+Mybatis+EasyUI,在开发过程中出现sql异常:“Cause: java.sql.SQLException: 无法转换为内部表示”,错 ...

随机推荐

  1. JZM 的印象笔记 (卷积,分块)

    题面 题目背景 大名鼎鼎的 OI 天花板选手 JZM 对自己的好伙伴--印象笔记有些生疏了 题目描述 作为一名 OI 选手,他的笔记中的字母只包含数字0和1. JZM 在印象笔记中找到了一行 N N ...

  2. Python入门系列(二)语法风格

    python缩进 Python使用缩进来表示代码块,例如 if 5 > 2: print("Five is greater than two!") 如果跳过缩进,Python ...

  3. KingbaseES 绑定变量与游标共享

    对于重复执行的SQL,需要使用绑定变量,避免SQL的重复解析.但是,并不是说使用了绑定变量,就一定能避免硬解析.具体可以参见:https://www.cnblogs.com/kingbase/p/16 ...

  4. [C/C++]C语言-踩坑记录

    很久没写C语言的代码,发现很多小细节,记下来备查. 0. C语言常规头文件 #include <stdlib.h> #include <stdio.h> 1. 二维数组的开辟和 ...

  5. Java开发学习(三十三)----Maven私服(一)私服简介安装与私服分类

    一.私服简介 团队开发现状分析 (1)张三负责ssm_crm的开发,自己写了一个ssm_pojo模块,要想使用直接将ssm_pojo安装到本地仓库即可 (2)李四负责ssm_order的开发,需要用到 ...

  6. kratos v2版本命令行工具使用

    使用 下载 go install github.com/go-kratos/kratos/cmd/kratos/v2@latest 查看是否安装成功 kratos -v kratos version ...

  7. 获取客户端访问真实 IP

    转载自:https://www.qikqiak.com/post/get-client-realip/ 通常,当集群内的客户端连接到服务的时候,是支持服务的 Pod 可以获取到客户端的 IP 地址的, ...

  8. ProxySQL(11):链式规则( flagIN 和 flagOUT )

    文章转载自:https://www.cnblogs.com/f-ck-need-u/p/9350631.html 理解链式规则 在mysql_query_rules表中,有两个特殊字段"fl ...

  9. Elasticsearch: analyzer

    在今天的文章中,我们来进一步了解analyzer. analyzer执行将输入字符流分解为token的过程,它一般发生在两个场合: 在indexing的时候,也即在建立索引的时候 在searching ...

  10. Java开发学习(三十六)----SpringBoot三种配置文件解析

    一. 配置文件格式 我们现在启动服务器默认的端口号是 8080,访问路径可以书写为 http://localhost:8080/books/1 在线上环境我们还是希望将端口号改为 80,这样在访问的时 ...