C#、Asp.net byte转换为GB/MB/KB 方法

在日常开发中,遇到一个开发问题,前端上传文件后,直接通过upload上传的,得到文件大小是byte类型,所以需要根据byte类型的值,将byte转换为GB/MB/KB,具体方法如下:



        /// <summary>
        /// byte转换为GB/MB/KB
        /// </summary>
        /// <param name="KSize"></param>
        /// <returns></returns>
        public Dictionary<string, double> ByteConversionGBMBKB(int KSize)
        {
            var dic = new Dictionary<string, double>();
             int GB = 1024 * 1024 * 1024;//定义GB的计算常量
             int MB = 1024 * 1024;//定义MB的计算常量
             int KB = 1024;//定义KB的计算常量

            if (KSize / GB >= 1)//如果当前Byte的值大于等于1GB
            {
                dic.Add("GB", Math.Round(KSize / (float)GB, 2)); //将其转换成GB
            }
            else if (KSize / MB >= 1)//如果当前Byte的值大于等于1MB
            {
                dic.Add("MB", Math.Round(KSize / (float)MB, 2)); //将其转换成MB
            }
            else if (KSize / KB >= 1)//如果当前Byte的值大于等于1KB
            {
                dic.Add("KB", Math.Round(KSize / (float)KB, 2)); //将其转换成KB
            }
            else
            {
                dic.Add("Byte", KSize);  //显示Byte值
            }

            return dic;
        }

这里的字典中: key为类型,value为文件大小。

顺便提一下,将字典解析出来的办法。


//调用方法
 var dic = ByteConversionGBMBKB(88351870);
  foreach (KeyValuePair<string, double> key in dic)
   {
var filetype = key.Key;
var filesize = key.Value;
   }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值