字节显示转换操作类 - C#小函数类推荐

此文记录的是一个将字节大小的值转换为KB、MB等显示的小函数。

复制代码
/***

    字节显示转换操作类

    Austin Liu 刘恒辉
    Project Manager and Software Designer

    E-Mail: lzhdim@163.com
    Blog:   http://lzhdim.cnblogs.com
    Date:   2024-01-15 15:18:00

    使用说明:
        KeyValuePair<string, double> m_kv = ConvertUtil.HtConvertByteUnit(size);
        string sizes = m_kv.Value + " " + m_kv.Key;
***/

namespace Lzhdim.LPF.Utility
{
    using System;
    using System.Collections.Generic;

    /// <summary>
    /// 字节显示转换操作类
    /// </summary>
    public static class ConvertUtil
    {
        /// <summary>
        /// byte转换为GB/MB/KB
        /// </summary>
        /// <param name="KSize"></param>
        /// <returns></returns>
        public static KeyValuePair<string, double> HtConvertByteUnit(long KSize)
        {
            KeyValuePair<string, double> m_kv;// = new KeyValuePair<string, double>();
            int m_GB = 1024 * 1024 * 1024;//定义GB的计算常量
            int m_MB = 1024 * 1024;//定义MB的计算常量
            int m_KB = 1024;//定义KB的计算常量

            if (KSize / m_GB >= 1)//如果当前Byte的值大于等于1GB
            {
                m_kv = new KeyValuePair<string, double>("GB", Math.Round(KSize / (float)m_GB, 2));
                //将其转换成GB
            }
            else if (KSize / m_MB >= 1)//如果当前Byte的值大于等于1MB
            {
                m_kv = new KeyValuePair<string, double>("MB", Math.Round(KSize / (float)m_MB, 2));

                //将其转换成MB
            }
            else if (KSize / m_KB >= 1)//如果当前Byte的值大于等于1KB
            {
                m_kv = new KeyValuePair<string, double>("KB", Math.Round(KSize / (float)m_KB, 2));

                //将其转换成KB
            }
            else
            {
                m_kv = new KeyValuePair<string, double>("Byte", KSize);

                //显示Byte值
            }

            return m_kv;
        }
    }
}
相关推荐
小浣熊熊熊熊熊熊熊丶9 小时前
《Effective Java》第25条:限制源文件为单个顶级类
java·开发语言·effective java
啃火龙果的兔子9 小时前
JDK 安装配置
java·开发语言
星哥说事9 小时前
应用程序监控:Java 与 Web 应用的实践
java·开发语言
等....10 小时前
Miniconda使用
开发语言·python
zfj32110 小时前
go为什么设计成源码依赖,而不是二进制依赖
开发语言·后端·golang
醇氧10 小时前
org.jetbrains.annotations的@Nullable 学习
java·开发语言·学习·intellij-idea
Java&Develop10 小时前
Aes加密 GCM java
java·开发语言·python
weixin_4624462310 小时前
使用 Go 实现 SSE 流式推送 + 打字机效果(模拟 Coze Chat)
开发语言·后端·golang
JIngJaneIL10 小时前
基于springboot + vue古城景区管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
敲敲了个代码10 小时前
隐式类型转换:哈基米 == 猫 ? true :false
开发语言·前端·javascript·学习·面试·web