Skip to content

Instantly share code, notes, and snippets.

@angelovstanton
Created September 12, 2015 14:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save angelovstanton/d6c614bc6e7eb7b0b42a to your computer and use it in GitHub Desktop.
Save angelovstanton/d6c614bc6e7eb7b0b42a to your computer and use it in GitHub Desktop.
private static string ToStringUsDigitsFormattingInternal<T>(
T number,
DigitsFormattingSettings digitsFormattingSettings = DigitsFormattingSettings.None,
int precesion = 2)
where T : struct,
IComparable,
IComparable<T>,
IConvertible,
IEquatable<T>,
IFormattable
{
string formattedDigits = string.Empty;
string currentNoComaFormatSpecifier = string.Concat("#.", new string('0', precesion));
string currentComaFormatSpecifier = string.Concat("##,#.", new string('0', precesion));
formattedDigits =
digitsFormattingSettings.HasFlag(DigitsFormattingSettings.NoComma) ? number.ToString(currentNoComaFormatSpecifier, usCultureInfo) :
number.ToString(currentComaFormatSpecifier, usCultureInfo);
if (digitsFormattingSettings.HasFlag(DigitsFormattingSettings.PrefixDollar))
{
formattedDigits = string.Concat("$", formattedDigits);
}
if (digitsFormattingSettings.HasFlag(DigitsFormattingSettings.PrefixMinus))
{
formattedDigits = string.Concat("-", formattedDigits);
}
if (digitsFormattingSettings.HasFlag(DigitsFormattingSettings.SufixDollar))
{
formattedDigits = string.Concat(formattedDigits, "$");
}
return formattedDigits;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment