java将流量KB转换为GB、MB、KB格式
/**
* 转换流量格式为xxGBxxMBxxKB
* @param flow 156165(xxxxxx)
*/
public String changeFlowFormat(String flow) {
Integer flows = Integer.valueOf(flow);
if (flows > 0 && flows < 1024) {//小于1M
return flows + "KB";
} else if (flows >= 1024 && flows < 1048576) {//大于1M小于1G
int changeM = (int) Math.floor(flows / 1024);//整M数
int surplusM = (int) Math.floor(flows % 1024);//除M后的余数
if (surplusM > 0) {//余数大于0KB
return changeM + "MB" + surplusM + "KB";
} else {//整M,没有余数
return changeM + "MB";
}
} else if (flows >= 1048576) {//大于1G
int changeG = (int) Math.floor(flows / 1048576);//整G数
int surplusG = (int) Math.floor(flows % 1048576);//除G后的余数
if (surplusG >= 1024) {//余数大于大于1M
int changeM = (int) Math.floor(surplusG / 1024);
int surplusM = (int) Math.floor(surplusG % 1024);
if (surplusM > 0) {//余数大于0KB
return changeG + "GB" + changeM + "MB" + surplusM + "KB";
} else {//整M,没有余数
return changeG + "GB" + changeM + "MB";
}
} else if (surplusG < 1024 && surplusG > 0) {//余数小于1M,大于0K
int surplusM = (int) Math.floor(surplusG % 1024);
return changeG + "GB" + surplusM + "KB";
} else {
return changeG + "GB";
}
}
return "暂无数据";
}
//js方法
/**
* 转换流量格式为xxGBxxMBxxKB
* @param flow 156165(xxxxxx)
*/
function changeFlowFormat(flow) {
console.log(flow);
if (flow >= 0 && flow < 1024) {//小于1M
return flow + "KB";
} else if (flow >= 1024 && flow < 1048576) {//大于1M小于1G
var changeM = Math.floor(flow / 1024);//整M数
var surplusM = Math.floor(flow % 1024);//除M后的余数
if (surplusM > 0) {//余数大于0KB
return changeM + "MB" + surplusM + "KB";
} else {//整M,没有余数
return changeM + "MB";
}
} else if (flow >= 1048576) {//大于1G
var changeG = Math.floor(flow / 1048576);//整G数
var surplusG = Math.floor(flow % 1048576)//除G后的余数
if (surplusG >= 1024) {//余数大于大于1M
var changeM = Math.floor(surplusG / 1024);
var surplusM = Math.floor(surplusG % 1024);
if (surplusM > 0) {//余数大于0KB
return changeG + "GB" + changeM + "MB" + surplusM + "KB";
} else {//整M,没有余数
return changeG + "GB" + changeM + "MB";
}
} else if (surplusG < 1024 && surplusG > 0) {//余数小于1M,大于0K
var surplusM = Math.floor(surplusG % 1024);
return changeG + "GB" + surplusM + "KB";
} else {
return changeG + "GB";
}
}
return "暂无数据";
}
java将流量KB转换为GB、MB、KB格式的更多相关文章
- java 上传文件大小转换为 GB/MB/KB/B
1.工具类 package cn.cmodes.common.utils; import java.io.File; import java.io.FileInputStream; import ja ...
- php文件大小单位转换GB MB KB
private function formatBytes($size){ $units = array('字节','K','M','G','T'); $i = 0; for( ; $size>= ...
- GB MB KB B 关系
1KB=1024Bytes=2的10次方Bytes 1MB=1024KB=2的20次方Bytes 1GB=1024MB=2的30次方Bytes 1TB=1024GB=2的40次方Bytes
- 文件大小转换成可显示的Mb,Gb和kb方法
public static String unitConversion(float resource) { String[] unit = new String[] { "B", ...
- 关于 KB/KiB、MB/MiB
ermmm--怎么说呢,这个非常容易搞混,那就写篇 blog 澄清一下吧-- 首先贴上百度百科的官方定义 根据国际单位制标准,1KB = 1000B(字节, Byte). 根据按照 IEC 命名标准 ...
- JAVA 长整型转换为IP地址的方法
JAVA 长整型转换为IP地址的方法 代码例如以下: /** * 整型解析为IP地址 * @param num * @return */ public static String int2iP(Lon ...
- Java进阶(二十三)java中long类型转换为int类型
java中long类型转换为int类型 由int类型转换为long类型是向上转换,可以直接进行隐式转换,但由long类型转换为int类型是向下转换,可能会出现数据溢出情况: 主要以下几种转换方法,供参 ...
- java.sql.SQLException: 无法转换为内部表示 -〉java 查询oracle数据库返回错误信息
java.sql.SQLException: 无法转换为内部表示 Query: SELECT * FROM nontheasttycoon Parameters: [] at org.apac ...
- Cause: java.sql.SQLException: 无法转换为内部表示(Mybatis)
公司开发档案系统使用框架:Spring+Struts2+Mybatis+EasyUI,在开发过程中出现sql异常:“Cause: java.sql.SQLException: 无法转换为内部表示”,错 ...
随机推荐
- 【mido】python的midi处理库
安装mido库:pip install mido pipy地址:https://pypi.org/project/mido/ mido官方文档:https://mido.readthedocs.io/ ...
- 二 代理模式【Proxy Pattern】 来自CBF4LIFE 的设计模式
什么是代理模式呢?我很忙,忙的没空理你,那你要找我呢就先找我的代理人吧,那代理人总要知道被代理人能做哪些事情不能做哪些事情吧,那就是两个人具备同一个接口,代理人虽然不能干活,但是被代理的人能干活呀. ...
- 【Android 逆向】ARM while 逆向
#include <stdio.h> int dowhile(int n){ int i = 1; int s = 0; do{ s += i; }while(i++ < n); r ...
- EntityFrameworkCore 模型自动更新(上)
话题 嗯,距离上一次写博文已经过去近整整十个月,还是有一些思考,但还是变得懒惰了,心思也不再那么专注,有点耗费时间,学习也有点停滞不前,那就顺其自然,随心所欲吧,等哪天心血来潮,想写了就写写 模型自动 ...
- Go常见
GO基础语法 方法或函数调用时,传入参数一般都是值复制,除非是map.slice.channel.指针类型是引用传递 短的变量声明(Short Variable Declarations),即自动推导 ...
- 走进Redis-扯扯集群
集群 为什么需要切片集群 已经有了管理主从集群的哨兵,为什么还需要推出切片集群呢?我认为有两个比较重要的原因: 当 Redis 上的数据一直累积的话,Redis 占用的内存会越来越大,如果开启了持久化 ...
- 前端 vue表格数据导出Excel 文件实现
实现思路 使用json2csv将后台json数据转化为csv格式数据 采用创建Blob(二进制大对象)的方式来存放缓存数据: 生成下载链接: 创建一个a标签,设置href和download属性 触发a ...
- Python实验报告——第3章 流程控制语句
实验报告 [实验目的] 1.掌握python中流程控制语句的使用,并能够应用到实际开发中. [实验条件] 1.PC机或者远程编程环境 [实验内容] 1.完成第三章流程控制语句实例01-09,实战一到实 ...
- 开启tcp_timestamps和tcp_tw_recycle造成NAT转发连接不上
文章转载自:https://segmentfault.com/a/1190000022264813
- 9_SpringBoot
一. SpringBoot介绍 1.1. 引言 为了使用SSM框架去开发, 准备SSM框架的模板配置 为了使Spring整合第三方框架, 单独的去编写xml文件 导致SSM项目后期xml文件特别多, ...