c# - interno - programa para formatear disco duro externo
¿Cómo puedo formatear un doble para redondear la moneda al primer dólar? (6)
Creo que la forma correcta de lograr tu objetivo es con esto:
Thread.CurrentThread.CurrentCulture.NumberFormat.CurrencyDecimalDigits = 0;
y solo entonces debes hacer la llamada de Formato:
String.Format("{0:C0}", numba)
En este momento tengo
double numba = 5212.6312
String.Format("{0:C}", Convert.ToInt32(numba) )
Esto me dará
$5,213.00
pero no quiero el ".00".
Sé que puedo soltar los últimos tres caracteres de la cuerda cada vez para lograr el efecto, pero parece que debería haber una manera más fácil.
Esto debería hacer el trabajo:
String.Format("{0:C0}", Convert.ToInt32(numba))
El número después de C
especifica la cantidad de decimales que se incluirán.
Sin embargo, sospecho que realmente quieres usar el tipo decimal
para almacenar esos números.
Primero, no mantenga la moneda en double
, use un decimal
lugar. Cada vez. Luego use "C0" como el especificador de formato:
decimal numba = 5212.6312M;
string s = numba.ToString("C0");
simple: numba.ToString("C2")
más @ http://msdn.microsoft.com/pt-br/library/dwhawy9k(v=vs.110).aspx#CFormatString
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
haga clic para ver la pantalla de puesta fuera de consola
Espero que esto te ayude ...
Gracias. :)
Console.WriteLine(numba.ToString("C0"));