mirror of
https://github.com/codex-storage/cs-codex-dist-tests.git
synced 2025-02-02 23:33:45 +00:00
19 lines
580 B
C#
19 lines
580 B
C#
using System.Globalization;
|
|
|
|
namespace Utils
|
|
{
|
|
public static class Formatter
|
|
{
|
|
private static readonly string[] sizeSuffixes = { "B", "KB", "MB", "GB", "TB", "PB", "EB" };
|
|
|
|
public static string FormatByteSize(long bytes)
|
|
{
|
|
if (bytes == 0) return "0" + sizeSuffixes[0];
|
|
|
|
var sizeOrder = Convert.ToInt32(Math.Floor(Math.Log(bytes, 1024)));
|
|
var digit = Math.Round(bytes / Math.Pow(1024, sizeOrder), 1);
|
|
return digit.ToString(CultureInfo.InvariantCulture) + sizeSuffixes[sizeOrder];
|
|
}
|
|
}
|
|
}
|