根据输入的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. }  
 

相关文章
|
7月前
|
算法 Java 索引
Byte Hex CRC计算笔记
Byte Hex CRC计算笔记
89 0
|
存储 文字识别 监控
Baumer工业相机堡盟相机BGAPI SDK如何联合Halcon进行图像转换(C++)(将byte二进制图像数据转为Hobject)
Baumer工业相机堡盟相机BGAPI SDK如何联合Halcon进行图像转换(C++)(将byte二进制图像数据转为Hobject)
170 0
java中整型数据(byte、short、int、long)溢出的现象及原理
java中整型数据(byte、short、int、long)溢出的现象及原理
|
SQL 关系型数据库 数据库
PostgreSQL sql文件编码引起的数据导入乱码或查询字符集异常报错(invalid byte sequence)
标签 PostgreSQL , 乱码 , 文件编码 背景 当用户客户端字符集与服务端字符集不匹配时,写入的多字节字符(例如中文)可能出现乱码。 例子 数据库字符集为sql_ascii,允许存储任意编码字符。
3768 0
从一个URL下载原始数据,基于byte字节
public static byte[] loadRawDataFromURL(String u) throws Exception { URL url = new URL(u); HttpURLConnection conn = (HttpURLConnection) url.
734 0
|
Java
java 读取文件 获取byte[]字节 并执行Gzip的压缩和解压
java 读取文件 获取byte[]字节 并执行Gzip的压缩和解压
125 0
|
5月前
|
Java Apache Maven
Java:commons-codec实现byte数组和16进制字符串转换
在上述代码中,`Hex.encodeHexString(bytes)`用于将byte数组转换为16进制字符串,`Hex.decodeHex(hexString)`用于将16进制字符串转换为byte数组。
111 0
|
5月前
|
Java Apache Maven
Java:commons-codec实现byte数组和16进制字符串转换
在上述代码中,`Hex.encodeHexString(bytes)`用于将byte数组转换为16进制字符串,`Hex.decodeHex(hexString)`用于将16进制字符串转换为byte数组。
133 0
|
存储 Java 计算机视觉
java 之byte
当涉及到处理数据时,Java 提供了多种数据类型,其中包括 `byte` 类型。在本文中,我们将深入探讨 Java 中的 `byte` 数据类型,了解它的特点、用途以及在编程中的实际应用。