2010-03-04 24 views
7

si tengo el siguiente:Poner comas en un decimal

MyString.ValueType = typeof(System.Decimal); 

¿Cómo puedo hacer esto que una salida de decimales con comas? En otras palabras, en lugar de ver 1234.5, me gustaría ver a 1,234.5

Respuesta

16

Uso:

String output = MyString.ValueType.ToString("N"); 

La "N" especificador de formato pondrá en los separadores de miles (,). Para más detalles, vea Decimal.ToString(string).

Editar:

El anteriormente, se utilizará la configuración de la cultura actual, por lo que los separadores de miles dependerán de la localización actual. Sin embargo, si desea que se utilice siempre la coma, y ​​el período para el separador decimal, que puede hacer:

String output = MyString.ValueType.ToString("N", CultureInfo.InvariantCulture); 

que obligará a utilizar el InvariantCulture, que utiliza una coma para miles y periodo para la separación decimal, que significa que siempre verá "1,234.5".

+0

El separador de miles que se usa en realidad dependerá de la cultura. –

+0

Sí. Es por eso que lo llamé "separadores de miles" en lugar de solo decir coma, pero este suele ser el enfoque "correcto". Voy a editar para aclarar ... –

+0

@ João Angelo: ¿Luces mejor? –