.NET String.Format() para agregar comas en el lugar de los miles para un número
Quiero agregar una coma en el lugar de los millares para un número.
¿ Sería String.Format()
el camino correcto a seguir? ¿Qué formato usaría?
Aceptado
$"{1234:n}"; // Output: 1,234.00
$"{9876:n0}"; // No digits after the decimal point. Output: 9,876
Encontré que esta es la forma más sencilla:
myInteger.ToString("N0")
int number = 1000000000;
string whatYouWant = number.ToString("#,##0");
//You get: 1,000,000,000
Si desea una cultura específica, puede probar esto:
utilizar espacio de nombres: "usando System.Globalization;"
(19950000.0).ToString("N",new CultureInfo("en-US"))
= 19.950.000,00
(19950000.0).ToString("N",new CultureInfo("is-IS"))
= 19.950.000,00
Cultura india:
(19950000.0).ToString("N",new CultureInfo("hi-IN"))
= 1,99,50.000,00
Nota: Algunas culturas suelen ,
significar decimal en lugar de .
así que tenga cuidado.
Formatos estándar, con sus correspondientes salidas,
Console.WriteLine("Standard Numeric Format Specifiers");
String s = String.Format("(C) Currency: . . . . . . . . {0:C}\n" +
"(D) Decimal:. . . . . . . . . {0:D}\n" +
"(E) Scientific: . . . . . . . {1:E}\n" +
"(F) Fixed point:. . . . . . . {1:F}\n" +
"(G) General:. . . . . . . . . {0:G}\n" +
" (default):. . . . . . . . {0} (default = 'G')\n" +
"(N) Number: . . . . . . . . . {0:N}\n" +
"(P) Percent:. . . . . . . . . {1:P}\n" +
"(R) Round-trip: . . . . . . . {1:R}\n" +
"(X) Hexadecimal:. . . . . . . {0:X}\n",
- 1234, -1234.565F);
Console.WriteLine(s);
Resultado de ejemplo (cultura en-us):
(C) Currency: . . . . . . . . ($1,234.00)
(D) Decimal:. . . . . . . . . -1234
(E) Scientific: . . . . . . . -1.234565E+003
(F) Fixed point:. . . . . . . -1234.57
(G) General:. . . . . . . . . -1234
(default):. . . . . . . . -1234 (default = 'G')
(N) Number: . . . . . . . . . -1,234.00
(P) Percent:. . . . . . . . . -123,456.50 %
(R) Round-trip: . . . . . . . -1234.565
(X) Hexadecimal:. . . . . . . FFFFFB2E