Format a number to display a comma when larger than a thousand

Simon picture Simon · Nov 15, 2013 · Viewed 54.6k times · Source

I am writing some code in Visual Basic.net and have a question.

If I have a long number, that is larger than 1000, how can I format this value to be 1,000 (with a comma) and for this to be stored in a string?

For e.g.

1234 will be stored as 1,234 12345 will be stored as 12,345 123456 will be stored as 123,456

Is this done with a TryParse statement?

May I have some help to so this?

Answer

Ric picture Ric · Nov 15, 2013

Take a look at The Numeric ("N") Format Specifier

General use:

Dim dblValue As Double = -12445.6789
Console.WriteLine(dblValue.ToString("N", CultureInfo.InvariantCulture))
' Displays -12,445.68

If you are only using integers then the following:

Dim numberString As String = 1234.ToString("N0")

Will show numberString = "1,234" as the "N0" format will not add any figures after a decimal point.