Right now I have
double numba = 5212.6312
String.Format(\"{0:C}\", Convert.ToInt32(numba) )
This will give me
$5,213.00
Console.WriteLine(numba.ToString("C0"));
I think the right way to achieve your goal is with this:
Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencyDecimalDigits = 0;
and only then you should do the Format call:
String.Format("{0:C0}", numba)
This should do the job:
String.Format("{0:C0}", Convert.ToInt32(numba))
The number after the C
specifies the number of decimal places to include.
I suspect you really want to be using the decimal type for storing such numbers however.
decimal value = 0.00M;
value = Convert.ToDecimal(12345.12345);
Console.WriteLine(".ToString(\"C\") Formates With Currency $ Sign");
Console.WriteLine(value.ToString("C"));
//OutPut : $12345.12
Console.WriteLine(value.ToString("C1"));
//OutPut : $12345.1
Console.WriteLine(value.ToString("C2"));
//OutPut : $12345.12
Console.WriteLine(value.ToString("C3"));
//OutPut : $12345.123
Console.WriteLine(value.ToString("C4"));
//OutPut : $12345.1235
Console.WriteLine(value.ToString("C5"));
//OutPut : $12345.12345
Console.WriteLine(value.ToString("C6"));
//OutPut : $12345.123450
click to see Console Out Put screen
Hope this may Help you...
Thanks. :)
First - don't keep currency in a double
- use a decimal
instead. Every time. Then use "C0" as the format specifier:
decimal numba = 5212.6312M;
string s = numba.ToString("C0");
simple: numba.ToString("C2")
more @ http://msdn.microsoft.com/pt-br/library/dwhawy9k(v=vs.110).aspx#CFormatString