我从一个不同问题的用户那里找到了这段代码,但我不知道如何将参数放入这些方法中(我是新手)。
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#控制台应用程序内部。并将计算结果显示给用户。
发布于 2016-11-24 23:40:41
只有一个重载方法,即ToPrettySize()。只需传入一个数字和所需的小数位数即可。
Console.WriteLine(Ext.ToPrettySize(1024000, 2)); // 1000Kbhttps://stackoverflow.com/questions/40790187
复制相似问题