public static String FormatNumber(Int64 value, NumberFormats format)
{
string retVal = value.ToString();
switch (format)
{
case NumberFormats.Currency:
retVal = value.ToString("c");
break;
case NumberFormats.DiskStorage:
// KILOBYTE
if (value < 1048576)
{
float newVal = (float)value/1024;
retVal = (newVal.ToString("#,##0")) + "kb";
}
// MEGABYTES
if (value >= 1048576 && value < 1073741824)
{
float newVal = (float)(value/1024)/1024;
retVal = (newVal.ToString("#,##0.0")) + "mb";
}
// GIGABYTES
if (value >= 1073741824 && value < 1099511627776)
{
float newVal = (float)((value/1024)/1024)/1024;
retVal = (newVal.ToString("#,##0.0")) + "gb";
}
// TERABYTES
if (value >= 1099511627776 && value < 1125899906842624)
{
float newVal = (float)(((value/1024)/1024)/1024)/1024;
retVal = (newVal.ToString("#,##0.0")) + "tb";
}
// PETABYTES
if (value >= 1125899906842624 && value < 1152921504606846976)
{
float newVal = (float)((((value / 1024) / 1024) / 1024) / 1024) / 1024;
retVal = (newVal.ToString("#,##0.0")) + "pb";
}
break;
}
return retVal;
}