How to convert integer to string using current culture in .NET?

How to convert an integer to a localized string in .NET?

Exempli gratia:

Int64 value = 12345678901; value.ToString(); // returns "12345678901", should be "123,4567,8901" value.ToString(CultureInfo.CurrentCulture); // returns "12345678901", should be "123,4567,8901" value.ToString(CultureInfo.CreateSpecificCulture("en-US")) // returns "12345678901", should be "12,345,678,901" value.ToString(CultureInfo.CreateSpecificCulture("fr-CH")) // returns "12345678901", should be "12'345'678'901" value.ToString(CultureInfo.CreateSpecificCulture("te-IN")) // returns "12345678901", should be "12,34,56,78,901" 

How to convert an integer (or float) to a localized string in .NET?

Bonus Chat

Unique list of number formats in the world:

  • 12 345 678 901
  • 12,34,56,78,901
  • 12345678901
  • 12.345.678.901
  • 12? 345? 678? 901
  • 123.4567.8901
  • 12'345'678'901

Additional bonus information where these culture settings can be found in .NET:

 CultureInfo.CreateSpecificCulture("en-US").NumberFormat.NumberGroupSizes = { 3 } CultureInfo.CreateSpecificCulture("en-US").NumberFormat.NumberGroupSeparator = "," CultureInfo.CreateSpecificCulture("te-IN").NumberFormat.NumberGroupSizes = { 3, 2 } CultureInfo.CreateSpecificCulture("te-IN").NumberFormat.NumberGroupSeparator = "," CultureInfo.CreateSpecificCulture("te-IN").NumberFormat.NumberGroupSizes = { 3 } CultureInfo.CreateSpecificCulture("te-IN").NumberFormat.NumberGroupSeparator = "'" 
+6
source share
1 answer

Use the standard format specifier "N" with an accuracy of 0.

 using System; class Test { static void Main() { long value = 12345678901; string text = value.ToString("N0"); Console.WriteLine(text); } } 

Result (on my car in the UK):

 12,345,678,901 

This takes into account the current culture in different aspects. Of course, you can specify the culture separately.

Change Generalized form for specific crops:

 value.ToString("N0", CultureInfo.CreateSpecificCulture("fr-CH")); 
+9
source

Source: https://habr.com/ru/post/902793/


All Articles