根据输入的byte单位计算出最简洁的表示数据

简介:
Java代码   收藏代码
  1. /** 
  2. * 根据输入的byte单位,计算出最简洁的表示数据 
  3. * 例如1024 得 1k 
  4. */  
  5. function humanReadableSize(f_size) {  
  6.     return getSmartSize(f_size);  
  7. }  
  8.   
  9. function getSmartSize(f_size) {  
  10.     var funit, k_size, m_size, g_size, f_size;  
  11.   
  12.     k_size = f_size / 1024;  
  13.     m_size = k_size / 1024;  
  14.     g_size = m_size / 1024;  
  15.   
  16.     if (1024 > f_size) {  
  17.         funit  = 'b';  
  18.         r_size = f_size;  
  19.     } else if (1024 > k_size) {  
  20.         funit  = 'K';  
  21.         r_size = Math.round(k_size);  
  22.     } else if (1024 > m_size) {  
  23.         funit = 'M';  
  24.         r_size = Math.round(m_size * 10) / 10;  
  25.     } else {  
  26.         funit = 'G';  
  27.         r_size = Math.round(g_size * 10) / 10;  
  28.     }  
  29.   
  30.     return '' + r_size + funit;  
  31. }  
  32.   
  33.   
  34. function gen_size(val, li, sepa ) {  
  35.     sep = Math.pow(10, sepa); //小数点后的位数  
  36.     li = Math.pow(10, li); //开始截断的长度  
  37.     retval  = val;  
  38.     unit    = 'Bytes';  
  39.     if (val >= li*1000000000) {  
  40.         val = Math.round( val / (1099511627776/sep) ) / sep;  
  41.         unit  = 'TB';  
  42.     } else if (val >= li*1000000) {  
  43.         val = Math.round( val / (1073741824/sep) ) / sep;  
  44.         unit  = 'GB';  
  45.     } else if (val >= li*1000) {  
  46.         val = Math.round( val / (1048576/sep) ) / sep;  
  47.         unit  = 'MB';  
  48.     } else if (val >= li) {  
  49.         val = Math.round( val / (1024/sep) ) / sep;  
  50.         unit  = 'KB';  
  51.     }  
  52.     return val + unit;  
  53. }  
 

相关文章
|
2天前
|
算法 Java 索引
Byte Hex CRC计算笔记
Byte Hex CRC计算笔记
9 0
|
8月前
|
存储 文字识别 监控
Baumer工业相机堡盟相机BGAPI SDK如何联合Halcon进行图像转换(C++)(将byte二进制图像数据转为Hobject)
Baumer工业相机堡盟相机BGAPI SDK如何联合Halcon进行图像转换(C++)(将byte二进制图像数据转为Hobject)
90 0
java中整型数据(byte、short、int、long)溢出的现象及原理
java中整型数据(byte、short、int、long)溢出的现象及原理
|
5月前
|
Java
java 读取文件 获取byte[]字节 并执行Gzip的压缩和解压
java 读取文件 获取byte[]字节 并执行Gzip的压缩和解压
49 0
|
8月前
|
存储 Java 计算机视觉
java 之byte
当涉及到处理数据时,Java 提供了多种数据类型,其中包括 `byte` 类型。在本文中,我们将深入探讨 Java 中的 `byte` 数据类型,了解它的特点、用途以及在编程中的实际应用。
|
8月前
|
Java
Java中 String与基本数据类型,包装类,char[],byte[]之间的转换
Java中 String与基本数据类型,包装类,char[],byte[]之间的转换
56 0
|
10月前
|
存储 Java
[java 基础知识] byte int 互转
[java 基础知识] byte int 互转
99 0
|
11月前
|
存储 Java
java基础类型中的char和byte的辨析及Unicode编码和UTF-8的区别
java基础类型中的char和byte的辨析及Unicode编码和UTF-8的区别
149 0
|
Java 数据安全/隐私保护
JAVA RSA加密解密代码范例(byte[]版)
JAVA RSA加密解密代码范例(byte[]版)
114 0
Java中字节Byte和位Bit的关系
Java中字节Byte和位Bit的关系