首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#位到千字节、兆字节等的计算器

C#位到千字节、兆字节等的计算器
EN

Stack Overflow用户
提问于 2016-11-24 23:36:52
回答 1查看 462关注 0票数 0

我从一个不同问题的用户那里找到了这段代码,但我不知道如何将参数放入这些方法中(我是新手)。

代码语言:javascript
复制
    public static class Ext
{
    private const long OneKb = 1024;
    private const long OneMb = OneKb * 1024;
    private const long OneGb = OneMb * 1024;
    private const long OneTb = OneGb * 1024;

    public static string ToPrettySize(this int value, int decimalPlaces = 0)
    {
        return ((long)value).ToPrettySize(decimalPlaces);
    }

    public static string ToPrettySize(this long value, int decimalPlaces = 0)
    {
        var asTb = Math.Round((double)value / OneTb, decimalPlaces);
        var asGb = Math.Round((double)value / OneGb, decimalPlaces);
        var asMb = Math.Round((double)value / OneMb, decimalPlaces);
        var asKb = Math.Round((double)value / OneKb, decimalPlaces);
        string chosenValue = asTb > 1 ? string.Format("{0}Tb",asTb)
            : asGb > 1 ? string.Format("{0}Gb",asGb)
            : asMb > 1 ? string.Format("{0}Mb",asMb)
            : asKb > 1 ? string.Format("{0}Kb",asKb)
            : string.Format("{0}B", Math.Round((double)value, decimalPlaces));
        return chosenValue;
    }
}

(Does .NET provide an easy way convert bytes to KB, MB, GB, etc.?)

我需要做一个计算器,这将转换为兆位和所有其他高达拍字节,也拍字节为位。在c#控制台应用程序内部。并将计算结果显示给用户。

EN

回答 1

Stack Overflow用户

发布于 2016-11-24 23:40:41

只有一个重载方法,即ToPrettySize()。只需传入一个数字和所需的小数位数即可。

代码语言:javascript
复制
Console.WriteLine(Ext.ToPrettySize(1024000, 2)); // 1000Kb
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40790187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档