Skip to main content
Version: 4.0 (next)

Humanizer.ByteSize

ByteSize Struct​

public struct ByteSize : System.IComparable<Humanizer.ByteSize>, System.IEquatable<Humanizer.ByteSize>, System.IComparable, System.IFormattable

Implements System.IComparable<ByteSize>, System.IEquatable<ByteSize>, System.IComparable, System.IFormattable

Constructors​

ByteSize(double) Constructor​

public ByteSize(double byteSize);
Parameters​

byteSize System.Double

Fields​

ByteSize.Bit Field​

public const string Bit = "bit";
Field Value​

System.String

ByteSize.BitsInByte Field​

public const long BitsInByte = 8;
Field Value​

System.Int64

ByteSize.BitSymbol Field​

public const string BitSymbol = "b";
Field Value​

System.String

ByteSize.Byte Field​

public const string Byte = "byte";
Field Value​

System.String

ByteSize.BytesInDecimalExabyte Field​

Gets the number of bytes in one decimal SI exabyte.

public const long BytesInDecimalExabyte = 1000000000000000000;
Field Value​

System.Int64

ByteSize.BytesInDecimalGigabyte Field​

Gets the number of bytes in one decimal SI gigabyte.

public const long BytesInDecimalGigabyte = 1000000000;
Field Value​

System.Int64

ByteSize.BytesInDecimalKilobyte Field​

Gets the number of bytes in one decimal SI kilobyte.

public const long BytesInDecimalKilobyte = 1000;
Field Value​

System.Int64

ByteSize.BytesInDecimalMegabyte Field​

Gets the number of bytes in one decimal SI megabyte.

public const long BytesInDecimalMegabyte = 1000000;
Field Value​

System.Int64

ByteSize.BytesInDecimalPetabyte Field​

Gets the number of bytes in one decimal SI petabyte.

public const long BytesInDecimalPetabyte = 1000000000000000;
Field Value​

System.Int64

ByteSize.BytesInDecimalTerabyte Field​

Gets the number of bytes in one decimal SI terabyte.

public const long BytesInDecimalTerabyte = 1000000000000;
Field Value​

System.Int64

ByteSize.BytesInExabyte Field​

public const long BytesInExabyte = 1000000000000000000;
Field Value​

System.Int64

ByteSize.BytesInGibibyte Field​

The number of bytes in a gibibyte, equivalent to the established gigabyte factor.

public const long BytesInGibibyte = 1073741824;
Field Value​

System.Int64

ByteSize.BytesInGigabyte Field​

public const long BytesInGigabyte = 1073741824;
Field Value​

System.Int64

ByteSize.BytesInKibibyte Field​

The number of bytes in a kibibyte, equivalent to the established kilobyte factor.

public const long BytesInKibibyte = 1024;
Field Value​

System.Int64

ByteSize.BytesInKilobyte Field​

public const long BytesInKilobyte = 1024;
Field Value​

System.Int64

ByteSize.BytesInMebibyte Field​

The number of bytes in a mebibyte, equivalent to the established megabyte factor.

public const long BytesInMebibyte = 1048576;
Field Value​

System.Int64

ByteSize.BytesInMegabyte Field​

public const long BytesInMegabyte = 1048576;
Field Value​

System.Int64

ByteSize.BytesInPebibyte Field​

public const long BytesInPebibyte = 1125899906842624;
Field Value​

System.Int64

ByteSize.BytesInPetabyte Field​

public const long BytesInPetabyte = 1000000000000000;
Field Value​

System.Int64

ByteSize.BytesInTebibyte Field​

The number of bytes in a tebibyte, equivalent to the established terabyte factor.

public const long BytesInTebibyte = 1099511627776;
Field Value​

System.Int64

ByteSize.BytesInTerabyte Field​

public const long BytesInTerabyte = 1099511627776;
Field Value​

System.Int64

ByteSize.ByteSymbol Field​

public const string ByteSymbol = "B";
Field Value​

System.String

ByteSize.Exabyte Field​

public const string Exabyte = "exabyte";
Field Value​

System.String

ByteSize.ExabyteSymbol Field​

public const string ExabyteSymbol = "EB";
Field Value​

System.String

ByteSize.Gibibyte Field​

The name of a gibibyte.

public const string Gibibyte = "gibibyte";
Field Value​

System.String

ByteSize.GibibyteSymbol Field​

The symbol for a gibibyte.

public const string GibibyteSymbol = "GiB";
Field Value​

System.String

ByteSize.Gigabyte Field​

public const string Gigabyte = "gigabyte";
Field Value​

System.String

ByteSize.GigabyteSymbol Field​

public const string GigabyteSymbol = "GB";
Field Value​

System.String

ByteSize.Kibibyte Field​

The name of a kibibyte.

public const string Kibibyte = "kibibyte";
Field Value​

System.String

ByteSize.KibibyteSymbol Field​

The symbol for a kibibyte.

public const string KibibyteSymbol = "KiB";
Field Value​

System.String

ByteSize.Kilobyte Field​

public const string Kilobyte = "kilobyte";
Field Value​

System.String

ByteSize.KilobyteSymbol Field​

public const string KilobyteSymbol = "KB";
Field Value​

System.String

ByteSize.MaxValue Field​

public static readonly ByteSize MaxValue;
Field Value​

ByteSize

ByteSize.Mebibyte Field​

The name of a mebibyte.

public const string Mebibyte = "mebibyte";
Field Value​

System.String

ByteSize.MebibyteSymbol Field​

The symbol for a mebibyte.

public const string MebibyteSymbol = "MiB";
Field Value​

System.String

ByteSize.Megabyte Field​

public const string Megabyte = "megabyte";
Field Value​

System.String

ByteSize.MegabyteSymbol Field​

public const string MegabyteSymbol = "MB";
Field Value​

System.String

ByteSize.MinValue Field​

public static readonly ByteSize MinValue;
Field Value​

ByteSize

ByteSize.Pebibyte Field​

public const string Pebibyte = "pebibyte";
Field Value​

System.String

ByteSize.PebibyteSymbol Field​

public const string PebibyteSymbol = "PiB";
Field Value​

System.String

ByteSize.Petabyte Field​

public const string Petabyte = "petabyte";
Field Value​

System.String

ByteSize.PetabyteSymbol Field​

public const string PetabyteSymbol = "PB";
Field Value​

System.String

ByteSize.Tebibyte Field​

The name of a tebibyte.

public const string Tebibyte = "tebibyte";
Field Value​

System.String

ByteSize.TebibyteSymbol Field​

The symbol for a tebibyte.

public const string TebibyteSymbol = "TiB";
Field Value​

System.String

ByteSize.Terabyte Field​

public const string Terabyte = "terabyte";
Field Value​

System.String

ByteSize.TerabyteSymbol Field​

public const string TerabyteSymbol = "TB";
Field Value​

System.String

Properties​

ByteSize.Bits Property​

public readonly long Bits { get; }
Property Value​

System.Int64

ByteSize.Bytes Property​

public readonly double Bytes { get; }
Property Value​

System.Double

ByteSize.DecimalExabytes Property​

Gets this value expressed in decimal SI exabytes.

public readonly double DecimalExabytes { get; }
Property Value​

System.Double

ByteSize.DecimalGigabytes Property​

Gets this value expressed in decimal SI gigabytes.

public readonly double DecimalGigabytes { get; }
Property Value​

System.Double

ByteSize.DecimalKilobytes Property​

Gets this value expressed in decimal SI kilobytes.

public readonly double DecimalKilobytes { get; }
Property Value​

System.Double

ByteSize.DecimalMegabytes Property​

Gets this value expressed in decimal SI megabytes.

public readonly double DecimalMegabytes { get; }
Property Value​

System.Double

ByteSize.DecimalPetabytes Property​

Gets this value expressed in decimal SI petabytes.

public readonly double DecimalPetabytes { get; }
Property Value​

System.Double

ByteSize.DecimalTerabytes Property​

Gets this value expressed in decimal SI terabytes.

public readonly double DecimalTerabytes { get; }
Property Value​

System.Double

ByteSize.Exabytes Property​

public readonly double Exabytes { get; }
Property Value​

System.Double

ByteSize.Gibibytes Property​

Gets the size in gibibytes.

public readonly double Gibibytes { get; }
Property Value​

System.Double

ByteSize.Gigabytes Property​

public readonly double Gigabytes { get; }
Property Value​

System.Double

ByteSize.Kibibytes Property​

Gets the size in kibibytes.

public readonly double Kibibytes { get; }
Property Value​

System.Double

ByteSize.Kilobytes Property​

public readonly double Kilobytes { get; }
Property Value​

System.Double

ByteSize.LargestWholeNumberFullWord Property​

public readonly string LargestWholeNumberFullWord { get; }
Property Value​

System.String

ByteSize.LargestWholeNumberSymbol Property​

public readonly string LargestWholeNumberSymbol { get; }
Property Value​

System.String

ByteSize.LargestWholeNumberValue Property​

public readonly double LargestWholeNumberValue { get; }
Property Value​

System.Double

ByteSize.Mebibytes Property​

Gets the size in mebibytes.

public readonly double Mebibytes { get; }
Property Value​

System.Double

ByteSize.Megabytes Property​

public readonly double Megabytes { get; }
Property Value​

System.Double

ByteSize.Pebibytes Property​

public readonly double Pebibytes { get; }
Property Value​

System.Double

ByteSize.Petabytes Property​

public readonly double Petabytes { get; }
Property Value​

System.Double

ByteSize.Tebibytes Property​

Gets the size in tebibytes.

public readonly double Tebibytes { get; }
Property Value​

System.Double

ByteSize.Terabytes Property​

public readonly double Terabytes { get; }
Property Value​

System.Double

Methods​

ByteSize.Add(ByteSize) Method​

public readonly Humanizer.ByteSize Add(Humanizer.ByteSize bs);
Parameters​

bs ByteSize

Returns​

ByteSize

ByteSize.AddBits(long) Method​

public readonly Humanizer.ByteSize AddBits(long value);
Parameters​

value System.Int64

Returns​

ByteSize

ByteSize.AddBytes(double) Method​

public readonly Humanizer.ByteSize AddBytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.AddExabytes(double) Method​

public readonly Humanizer.ByteSize AddExabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.AddGigabytes(double) Method​

public readonly Humanizer.ByteSize AddGigabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.AddKilobytes(double) Method​

public readonly Humanizer.ByteSize AddKilobytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.AddMegabytes(double) Method​

public readonly Humanizer.ByteSize AddMegabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.AddPebibytes(double) Method​

public readonly Humanizer.ByteSize AddPebibytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.AddPetabytes(double) Method​

public readonly Humanizer.ByteSize AddPetabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.AddTerabytes(double) Method​

public readonly Humanizer.ByteSize AddTerabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.CompareTo(ByteSize) Method​

public readonly int CompareTo(Humanizer.ByteSize other);
Parameters​

other ByteSize

Returns​

System.Int32

ByteSize.CompareTo(object) Method​

public readonly int CompareTo(object? obj);
Parameters​

obj System.Object

Implements CompareTo(object)

Returns​

System.Int32

ByteSize.Equals(ByteSize) Method​

public readonly bool Equals(Humanizer.ByteSize value);
Parameters​

value ByteSize

Returns​

System.Boolean

ByteSize.Equals(object) Method​

public override readonly bool Equals(object? value);
Parameters​

value System.Object

Returns​

System.Boolean

ByteSize.Format(ByteSizeUnitSystem, string, IFormatProvider) Method​

Formats this value with an explicitly selected unit system.

public readonly string Format(Humanizer.ByteSizeUnitSystem unitSystem, string? format=null, System.IFormatProvider? formatProvider=null);
Parameters​

unitSystem ByteSizeUnitSystem

The unit system to use.

format System.String

The numeric format and optional unit token. For DecimalSi and BinaryIec, SI/IEC-prefixed unit tokens are matched case-insensitively, while b and B remain case-sensitive; output uses canonical symbol casing. Legacy preserves established matching behavior. At most one distinct unescaped, unquoted unit token is permitted, although the same token may be repeated across numeric format sections.

formatProvider System.IFormatProvider

The provider used to format the numeric value.

Returns​

System.String
The formatted byte size.

Exceptions​

System.ArgumentOutOfRangeException
unitSystem is not defined.

System.FormatException
format is invalid, contains mixed unit tokens, or selects a token not supported by the selected non-legacy system.

ByteSize.FormatFullWords(ByteSizeUnitSystem, string, IFormatProvider) Method​

Formats this value with localized unit words from an explicitly selected unit system.

public readonly string FormatFullWords(Humanizer.ByteSizeUnitSystem unitSystem, string? format=null, System.IFormatProvider? formatProvider=null);
Parameters​

unitSystem ByteSizeUnitSystem

The unit system to use.

format System.String

The numeric format and optional unit token. For DecimalSi and BinaryIec, SI/IEC-prefixed unit tokens are matched case-insensitively, while b and B remain case-sensitive; localized words replace the selected token. Legacy preserves established matching behavior. At most one distinct unescaped, unquoted unit token is permitted, although the same token may be repeated across numeric format sections.

formatProvider System.IFormatProvider

The provider used to format the numeric value and select localized unit words.

Returns​

System.String
The formatted byte size using localized unit words.

Exceptions​

System.ArgumentOutOfRangeException
unitSystem is not defined.

System.FormatException
format is invalid, contains mixed unit tokens, or selects a token not supported by the selected non-legacy system.

ByteSize.FromBits(long) Method​

public static Humanizer.ByteSize FromBits(long value);
Parameters​

value System.Int64

Returns​

ByteSize

ByteSize.FromBytes(double) Method​

public static Humanizer.ByteSize FromBytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromDecimalExabytes(double) Method​

Creates a byte size from a number of decimal SI exabytes.

public static Humanizer.ByteSize FromDecimalExabytes(double value);
Parameters​

value System.Double

The number of decimal SI exabytes.

Returns​

ByteSize
The equivalent byte size.

Exceptions​

System.ArgumentOutOfRangeException
value is not finite or is outside the range supported by Bits.

ByteSize.FromDecimalGigabytes(double) Method​

Creates a byte size from a number of decimal SI gigabytes.

public static Humanizer.ByteSize FromDecimalGigabytes(double value);
Parameters​

value System.Double

The number of decimal SI gigabytes.

Returns​

ByteSize
The equivalent byte size.

Exceptions​

System.ArgumentOutOfRangeException
value is not finite or is outside the range supported by Bits.

ByteSize.FromDecimalKilobytes(double) Method​

Creates a byte size from a number of decimal SI kilobytes.

public static Humanizer.ByteSize FromDecimalKilobytes(double value);
Parameters​

value System.Double

The number of decimal SI kilobytes.

Returns​

ByteSize
The equivalent byte size.

Exceptions​

System.ArgumentOutOfRangeException
value is not finite or is outside the range supported by Bits.

ByteSize.FromDecimalMegabytes(double) Method​

Creates a byte size from a number of decimal SI megabytes.

public static Humanizer.ByteSize FromDecimalMegabytes(double value);
Parameters​

value System.Double

The number of decimal SI megabytes.

Returns​

ByteSize
The equivalent byte size.

Exceptions​

System.ArgumentOutOfRangeException
value is not finite or is outside the range supported by Bits.

ByteSize.FromDecimalPetabytes(double) Method​

Creates a byte size from a number of decimal SI petabytes.

public static Humanizer.ByteSize FromDecimalPetabytes(double value);
Parameters​

value System.Double

The number of decimal SI petabytes.

Returns​

ByteSize
The equivalent byte size.

Exceptions​

System.ArgumentOutOfRangeException
value is not finite or is outside the range supported by Bits.

ByteSize.FromDecimalTerabytes(double) Method​

Creates a byte size from a number of decimal SI terabytes.

public static Humanizer.ByteSize FromDecimalTerabytes(double value);
Parameters​

value System.Double

The number of decimal SI terabytes.

Returns​

ByteSize
The equivalent byte size.

Exceptions​

System.ArgumentOutOfRangeException
value is not finite or is outside the range supported by Bits.

ByteSize.FromExabytes(double) Method​

public static Humanizer.ByteSize FromExabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromGibibytes(double) Method​

Creates a byte size from a number of gibibytes.

public static Humanizer.ByteSize FromGibibytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromGigabytes(double) Method​

public static Humanizer.ByteSize FromGigabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromKibibytes(double) Method​

Creates a byte size from a number of kibibytes.

public static Humanizer.ByteSize FromKibibytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromKilobytes(double) Method​

public static Humanizer.ByteSize FromKilobytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromMebibytes(double) Method​

Creates a byte size from a number of mebibytes.

public static Humanizer.ByteSize FromMebibytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromMegabytes(double) Method​

public static Humanizer.ByteSize FromMegabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromPebibytes(double) Method​

public static Humanizer.ByteSize FromPebibytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromPetabytes(double) Method​

public static Humanizer.ByteSize FromPetabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromTebibytes(double) Method​

Creates a byte size from a number of tebibytes.

public static Humanizer.ByteSize FromTebibytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.FromTerabytes(double) Method​

public static Humanizer.ByteSize FromTerabytes(double value);
Parameters​

value System.Double

Returns​

ByteSize

ByteSize.GetHashCode() Method​

public override readonly int GetHashCode();
Returns​

System.Int32

ByteSize.GetLargestWholeNumberFullWord(IFormatProvider) Method​

public readonly string GetLargestWholeNumberFullWord(System.IFormatProvider? provider=null);
Parameters​

provider System.IFormatProvider

Returns​

System.String

ByteSize.GetLargestWholeNumberSymbol(IFormatProvider) Method​

public readonly string GetLargestWholeNumberSymbol(System.IFormatProvider? provider=null);
Parameters​

provider System.IFormatProvider

Returns​

System.String

ByteSize.Parse(string) Method​

public static Humanizer.ByteSize Parse(string s);
Parameters​

s System.String

Returns​

ByteSize

ByteSize.Parse(string, IFormatProvider) Method​

public static Humanizer.ByteSize Parse(string s, System.IFormatProvider? formatProvider);
Parameters​

s System.String

formatProvider System.IFormatProvider

Returns​

ByteSize

ByteSize.ParseWithUnitSystem(string, ByteSizeUnitSystem, IFormatProvider) Method​

Parses a byte size using only the tokens defined by the selected unit system.

public static Humanizer.ByteSize ParseWithUnitSystem(string s, Humanizer.ByteSizeUnitSystem unitSystem, System.IFormatProvider? formatProvider=null);
Parameters​

s System.String

The text to parse.

unitSystem ByteSizeUnitSystem

The unit system whose tokens are accepted.

formatProvider System.IFormatProvider

The provider used to parse the numeric value.

Returns​

ByteSize
The parsed byte size.

Exceptions​

System.ArgumentNullException
s is null.

System.ArgumentOutOfRangeException
unitSystem is not defined.

System.FormatException
s is not valid for the selected unit system.

Remarks​

For DecimalSi and BinaryIec, SI/IEC-prefixed unit tokens are matched case-insensitively, while b and B remain case-sensitive. Legacy parsing preserves the established behavior.

ByteSize.Subtract(ByteSize) Method​

public readonly Humanizer.ByteSize Subtract(Humanizer.ByteSize bs);
Parameters​

bs ByteSize

Returns​

ByteSize

ByteSize.ToFullWords(string, IFormatProvider) Method​

Converts the value of the current ByteSize object to a string with full words. The metric prefix symbol (bit, byte, kilo, mega, giga, tera, peta, exa) used is the largest metric prefix such that the corresponding value is greater than or equal to one.

public readonly string ToFullWords(string? format=null, System.IFormatProvider? provider=null);
Parameters​

format System.String

provider System.IFormatProvider

Returns​

System.String

ByteSize.ToString() Method​

Converts the value of the current ByteSize object to a string. The metric prefix symbol (bit, byte, kilo, mega, giga, tera, peta, exa) used is the largest metric prefix such that the corresponding value is greater than or equal to one.

public override readonly string ToString();
Returns​

System.String

ByteSize.ToString(string) Method​

public readonly string ToString(string? format);
Parameters​

format System.String

Returns​

System.String

ByteSize.ToString(string, IFormatProvider) Method​

public readonly string ToString(string? format, System.IFormatProvider? provider);
Parameters​

format System.String

provider System.IFormatProvider

Implements ToString(string, IFormatProvider)

Returns​

System.String

ByteSize.ToString(IFormatProvider) Method​

public readonly string ToString(System.IFormatProvider? provider);
Parameters​

provider System.IFormatProvider

Returns​

System.String

ByteSize.TryParse(string, ByteSize) Method​

public static bool TryParse(string? s, out Humanizer.ByteSize result);
Parameters​

s System.String

result ByteSize

Returns​

System.Boolean

ByteSize.TryParse(string, IFormatProvider, ByteSize) Method​

public static bool TryParse(string? s, System.IFormatProvider? formatProvider, out Humanizer.ByteSize result);
Parameters​

s System.String

formatProvider System.IFormatProvider

result ByteSize

Returns​

System.Boolean

ByteSize.TryParse(ReadOnlySpan<char>, ByteSize) Method​

public static bool TryParse(System.ReadOnlySpan<char> s, out Humanizer.ByteSize result);
Parameters​

s System.ReadOnlySpan<System.Char>

result ByteSize

Returns​

System.Boolean

ByteSize.TryParse(ReadOnlySpan<char>, IFormatProvider, ByteSize) Method​

public static bool TryParse(System.ReadOnlySpan<char> s, System.IFormatProvider? formatProvider, out Humanizer.ByteSize result);
Parameters​

s System.ReadOnlySpan<System.Char>

formatProvider System.IFormatProvider

result ByteSize

Returns​

System.Boolean

ByteSize.TryParseSpanWithUnitSystem(ReadOnlySpan<char>, ByteSizeUnitSystem, ByteSize) Method​

Attempts to parse a byte-size character span using only the tokens defined by the selected unit system.

public static bool TryParseSpanWithUnitSystem(System.ReadOnlySpan<char> s, Humanizer.ByteSizeUnitSystem unitSystem, out Humanizer.ByteSize result);
Parameters​

s System.ReadOnlySpan<System.Char>

The character span to parse.

unitSystem ByteSizeUnitSystem

The unit system whose tokens are accepted.

result ByteSize

When this method returns, contains the parsed byte size if parsing succeeded; otherwise, the default value.

Returns​

System.Boolean
true if parsing succeeded; otherwise, false.

Exceptions​

System.ArgumentOutOfRangeException
unitSystem is not defined.

Remarks​

For DecimalSi and BinaryIec, SI/IEC-prefixed unit tokens are matched case-insensitively, while b and B remain case-sensitive. Legacy parsing preserves the established behavior.

ByteSize.TryParseSpanWithUnitSystem(ReadOnlySpan<char>, ByteSizeUnitSystem, IFormatProvider, ByteSize) Method​

Attempts to parse a byte-size character span using only the tokens defined by the selected unit system.

public static bool TryParseSpanWithUnitSystem(System.ReadOnlySpan<char> s, Humanizer.ByteSizeUnitSystem unitSystem, System.IFormatProvider? formatProvider, out Humanizer.ByteSize result);
Parameters​

s System.ReadOnlySpan<System.Char>

The character span to parse.

unitSystem ByteSizeUnitSystem

The unit system whose tokens are accepted.

formatProvider System.IFormatProvider

The provider used to parse the numeric value.

result ByteSize

When this method returns, contains the parsed byte size if parsing succeeded; otherwise, the default value.

Returns​

System.Boolean
true if parsing succeeded; otherwise, false.

Exceptions​

System.ArgumentOutOfRangeException
unitSystem is not defined.

Remarks​

For DecimalSi and BinaryIec, SI/IEC-prefixed unit tokens are matched case-insensitively, while b and B remain case-sensitive. Legacy parsing preserves the established behavior.

ByteSize.TryParseWithUnitSystem(string, ByteSizeUnitSystem, ByteSize) Method​

Attempts to parse a byte size using only the tokens defined by the selected unit system.

public static bool TryParseWithUnitSystem(string? s, Humanizer.ByteSizeUnitSystem unitSystem, out Humanizer.ByteSize result);
Parameters​

s System.String

The text to parse.

unitSystem ByteSizeUnitSystem

The unit system whose tokens are accepted.

result ByteSize

When this method returns, contains the parsed byte size if parsing succeeded; otherwise, the default value.

Returns​

System.Boolean
true if parsing succeeded; otherwise, false.

Exceptions​

System.ArgumentOutOfRangeException
unitSystem is not defined.

Remarks​

For DecimalSi and BinaryIec, SI/IEC-prefixed unit tokens are matched case-insensitively, while b and B remain case-sensitive. Legacy parsing preserves the established behavior.

ByteSize.TryParseWithUnitSystem(string, ByteSizeUnitSystem, IFormatProvider, ByteSize) Method​

Attempts to parse a byte size using only the tokens defined by the selected unit system.

public static bool TryParseWithUnitSystem(string? s, Humanizer.ByteSizeUnitSystem unitSystem, System.IFormatProvider? formatProvider, out Humanizer.ByteSize result);
Parameters​

s System.String

The text to parse.

unitSystem ByteSizeUnitSystem

The unit system whose tokens are accepted.

formatProvider System.IFormatProvider

The provider used to parse the numeric value.

result ByteSize

When this method returns, contains the parsed byte size if parsing succeeded; otherwise, the default value.

Returns​

System.Boolean
true if parsing succeeded; otherwise, false.

Exceptions​

System.ArgumentOutOfRangeException
unitSystem is not defined.

Remarks​

For DecimalSi and BinaryIec, SI/IEC-prefixed unit tokens are matched case-insensitively, while b and B remain case-sensitive. Legacy parsing preserves the established behavior.

Operators​

ByteSize.operator +(ByteSize, ByteSize) Operator​

public static Humanizer.ByteSize operator +(Humanizer.ByteSize b1, Humanizer.ByteSize b2);
Parameters​

b1 ByteSize

b2 ByteSize

Returns​

ByteSize

ByteSize.operator --(ByteSize) Operator​

public static Humanizer.ByteSize operator --(Humanizer.ByteSize b);
Parameters​

b ByteSize

Returns​

ByteSize

ByteSize.operator ==(ByteSize, ByteSize) Operator​

public static bool operator ==(Humanizer.ByteSize b1, Humanizer.ByteSize b2);
Parameters​

b1 ByteSize

b2 ByteSize

Returns​

System.Boolean

ByteSize.operator >(ByteSize, ByteSize) Operator​

public static bool operator >(Humanizer.ByteSize b1, Humanizer.ByteSize b2);
Parameters​

b1 ByteSize

b2 ByteSize

Returns​

System.Boolean

ByteSize.operator >=(ByteSize, ByteSize) Operator​

public static bool operator >=(Humanizer.ByteSize b1, Humanizer.ByteSize b2);
Parameters​

b1 ByteSize

b2 ByteSize

Returns​

System.Boolean

ByteSize.operator ++(ByteSize) Operator​

public static Humanizer.ByteSize operator ++(Humanizer.ByteSize b);
Parameters​

b ByteSize

Returns​

ByteSize

ByteSize.operator !=(ByteSize, ByteSize) Operator​

public static bool operator !=(Humanizer.ByteSize b1, Humanizer.ByteSize b2);
Parameters​

b1 ByteSize

b2 ByteSize

Returns​

System.Boolean

ByteSize.operator <(ByteSize, ByteSize) Operator​

public static bool operator <(Humanizer.ByteSize b1, Humanizer.ByteSize b2);
Parameters​

b1 ByteSize

b2 ByteSize

Returns​

System.Boolean

ByteSize.operator <=(ByteSize, ByteSize) Operator​

public static bool operator <=(Humanizer.ByteSize b1, Humanizer.ByteSize b2);
Parameters​

b1 ByteSize

b2 ByteSize

Returns​

System.Boolean

ByteSize.operator -(ByteSize, ByteSize) Operator​

public static Humanizer.ByteSize operator -(Humanizer.ByteSize b1, Humanizer.ByteSize b2);
Parameters​

b1 ByteSize

b2 ByteSize

Returns​

ByteSize

ByteSize.operator -(ByteSize) Operator​

public static Humanizer.ByteSize operator -(Humanizer.ByteSize b);
Parameters​

b ByteSize

Returns​

ByteSize